PHP多个接口同个方法
摘要:PHP多个接口同个方法
PHP多个接口同个方法
假设有多个接口有一个相反的方法名,且不是承继进去的,PHP是不容许的
如下实例:
php;">
interface a{
public function x();
}
interface b{
public function x();
}
class c implements a,b{
public function x();
}
报如下谬误: Can't inherit abstract function b::x() (previously declared abstract in c)
假设要完成不同接口有相反的方法,可能如下完成:
php;">
interface d{
public function x();
}
interface a extends d{}
interface b extends d{}
class c implements a,b{
public function x(){
echo "succ";
}
}
如下实例:
php;">
interface a{
public function x();
}
interface b{
public function x();
}
class c implements a,b{
public function x();
}
报如下谬误: Can't inherit abstract function b::x() (previously declared abstract in c)
假设要完成不同接口有相反的方法,可能如下完成:
php;">
interface d{
public function x();
}
interface a extends d{}
interface b extends d{}
class c implements a,b{
public function x(){
echo "succ";
}
}