Code Fix

中級 › インターフェースのメソッドを実装し忘れると Fatal error になる › パターン5

インターフェースのメソッドを実装し忘れると Fatal error になる

implementsで宣言したインターフェースのメソッドを1つでも実装し忘れると、そのクラス自体を読み込んだ時点で致命的エラーになります。

 1  <?php
 2  interface Printable {
 3      public function toText(): string;
 4  }
 5  class Invoice implements Printable {
 6      ___________________________________________________
                                 ^
 7  }
 8  $inv = new Invoice();
Fatal error: Class Invoice contains 1 abstract method and must therefore be declared abstract or implement the remaining methods (Printable::toText) in main.php on line 5

空欄を埋めて実行を通す

広告
広告スロット(未設定)

インターフェースのメソッドを実装し忘れると Fatal error になる

インスタンス化する前、クラスの定義そのものが不完全と判定されます。

このエラーの解説と類題をまとめて見る →

広告
広告スロット(未設定)