Webエンジニア向けプログラミング解説動画をYouTubeで配信中!
▶ チャンネル登録はこちら

【Ruby3.x】Object::NotImplementedError定数の使い方

NotImplementedError定数の使い方について、初心者にもわかりやすく解説します。

作成日: 更新日:

基本的な使い方

NotImplementedError定数は、Rubyにおける組み込みのエラークラスの一つです。主に、メソッドが特定の環境や状況においてまだ実装されていない、あるいはサブクラスでの実装が期待されているにもかかわらず、その実装が提供されていないことを明確に示すために使用されます。

このエラーは、一般的に、抽象的な概念を表現する基底クラス(親クラス)で、サブクラス(子クラス)が必ずオーバーライドして具体的な処理を実装すべきメソッドを定義する際に利用されます。例えば、親クラスで「このメソッドは子クラスで実装してください」という意図でメソッドを定義し、もし子クラスがその実装を忘れて親クラスのメソッドが直接呼び出された場合に、このNotImplementedErrorを発生させることで、開発者に実装の漏れを早期に知らせることができます。

NotImplementedErrorはStandardErrorクラスを継承しているため、通常の例外処理メカニズム(begin...rescueブロックなど)で捕捉し、適切に処理することが可能です。このエラーを明示的に発生させることで、プログラムの設計意図を明確にし、未完成または未対応の機能が意図せず呼び出されることを防ぎ、システムの堅牢性を高めるのに役立ちます。実装が完了していないメソッドに対して、利用者にその旨を伝えるための有効な手段となります。

構文(syntax)

1raise NotImplementedError, "このメソッドはサブクラスで実装される必要があります。"

引数(parameters)

引数なし

引数はありません

戻り値(return)

NotImplementedError

NotImplementedError は、未実装のメソッドが呼び出された際に発生する例外オブジェクトです。

関連コンテンツ

関連プログラミング言語