本文实例讲述了php接口隔离原则。分享给大家供大家参考,具体如下:
使用多个专门的接口比使用单一的总接口要好。
一个类对另外一个类的依赖性应当是建立在最小的接口上的。
一个接口代表一个角色,不应当将不同的角色都交给一个接口。没有关系的接口合并在一起,形成一个臃肿的大接口,这是对角色和接口的污染。
“不应该强迫客户依赖于它们不用的方法。接口属于客户,不属于它所在的类层次结构。”这个说得很明白了,再通俗点说,不要强迫客户使用它们不用的方法,如果强迫用户使用它们不使用的方法,那么这些客户就会面临由于这些不使用的方法的改变所带来的改变。
interface A
{
public function getAge();
}
interface B extends A
{
public function getName();
}
class D implements A
{
/**
* interface @Override
*/
public function getAge()
{
return 22;
}
}
class C extends D implements B
{
/*
* interface @Override
*/
public function getName()
{
return '勇哥';
}
}
header("content-type:text/html;charset=utf-8");
$c = new \C();
echo $c->getName();
?>
运行结果:
勇哥
希望本文所述对大家PHP程序设计有所帮助。