中級 › Cannot instantiate abstract class の原因と直し方 › パターン2
Cannot instantiate abstract class の原因と直し方
abstractを付けたクラスは、そのままnewしてインスタンス化することができません。
1 <?php 2 abstract class Animal { 3 abstract public function speak(): string; 4 } 5 class Dog extends Animal { 6 public function speak(): string { return "Woof"; } 7 } 8 $a = new _____________(); ^ 9 echo $a->speak();
Fatal error: Uncaught Error: Cannot instantiate abstract class Animal in main.php:8
空欄を埋めて実行を通す
Animalはabstractなのでnewできません。speakを実装したDogをnewします。
次の問題