【发布时间】:2018-03-27 18:19:58
【问题描述】:
看了http://php.net/manual/en/language.oop5.interfaces.php之后,我不确定什么时候应该扩展接口或使用多个接口或扩展带有接口的类。使用什么标准来确定采用哪种方法?
<?php
interface Interface_A
{
public function aaa();
}
interface Interface_B
{
public function bbb();
}
interface Interface_C extends Interface_A
{
public function bbb();
}
class Class_A implements Interface_A, Interface_B
{
public function aaa(){}
public function bbb(){}
}
class Class_B implements Interface_C
{
public function aaa(){}
public function bbb(){}
}
class Class_C implements Interface_A
{
public function aaa(){}
}
class Class_D extends Class_C implements Interface_B
{
//public function aaa(){} //Use parent
public function bbb(){}
}
【问题讨论】:
-
没有单一的标准。您需要对现有模式进行研究,然后选择一种或提出自己的设计。
-
@yivi 感谢您的评论。虽然我看到了为什么使用现有接口扩展类可能比其他解决方案有利或不利的原因,但我认为扩展接口与使用多个接口之间没有区别。您是否遇到过任何描述使用一种方法而不是另一种方法的策略的教程?