在我的团队目前正在进行的项目中,我们正在修改一个商业 PHP 应用程序。该应用程序中散布着父类检查并使用父类中不存在的属性的代码,如下所示:
class A
{
function doSomething()
{
if (property_exists($this, 'some_property'))
{
$this->some_property = $_REQUEST['val'];
}
}
}
class B extends A
{
protected $some_property;
function doSomething()
{
parent::doSomething();
}
}
我们觉得不得不修改这段代码有点脏;这是正确的设计吗?有什么方法(除了显而易见的)可以避免这样的事情?
最佳答案
您可能会考虑 abstracting父类。所以 child 必须有的方法在父级中声明,但没有实现。
关于php - 父类引用仅存在于子类中的属性是否合适?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1626899/