我正在学习高级 OOP PHP..(或者我想学习 :))
This是我的代码。
摘录:
<?php
abstract class Karakter
{
abstract public function isim($name);
abstract public function yas($age);
public function yazdir()
{
print $this->isim() . " " . $this->yas();
}
}
class Insan extends Karakter
{
public $isim;
public $yas;
public function isim()
{
return "Bu adamın ismi: " . $this->isim;
}
public function yas()
{
return "Bu adamın yaşı: " . $this->yas;
}
}
当我运行这段代码时,我无法通过。我可以看到这个错误:
Fatal error: Declaration of Insan::isim() must be compatible with that of Karakter::isim() in C:\AppServ\www\OOP\1.php on line 26
最佳答案
你已经在抽象类中定义了带有一个参数的函数isim
。
abstract public function isim($name);
为了在任何子类中正确实现此函数,您必须仅使用一个参数覆盖该函数:
class Insan extends Karakter {
public function isim($name) {
[..]
}
...
}
关于php - 在 PHP 中扩展抽象类时出现 fatal error ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8066790/