Code Fix

中級 › Cannot instantiate abstract class の原因と直し方 › パターン4

Cannot instantiate abstract class の原因と直し方

abstractを付けたクラスは、そのままnewしてインスタンス化することができません。

 1  <?php
 2  abstract class Instrument {
 3      abstract public function play(): string;
 4  }
 5  class Piano extends Instrument {
 6      public function play(): string { return "Plink"; }
 7  }
 8  $x = new _________________();
                     ^
Fatal error: Uncaught Error: Cannot instantiate abstract class Instrument in main.php:8

空欄を埋めて実行を通す

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

Cannot instantiate abstract class の原因と直し方

abstractクラスはサブクラスに実装させるための設計図であり、必ず継承先のクラスを使う必要があります。

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

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