【发布时间】:2012-05-25 07:05:40
【问题描述】:
我最近在 Wikipedia 上阅读了一篇关于 Design Pattern 的文章
到目前为止,我已经这样做了,但它返回 Fatal error: Maximum function nesting level of '100' reached, aborting!
逻辑上我知道,它会返回嵌套错误,但是,我不明白最好的步骤是什么。
class Main {
$this->Aa = new Aa;
$this->Bb = new Bb;
$this->Cc = new Cc;
}
class Aa extends Main {
function blahA() {
// blah blah
}
function testA() {
$ret[] = $this->blahA(); // Call inside class
$ret[] = $this->Bb->blahB(); // Call outside class
$ret[] = $this->Cc->blahC(); // Call outside class
return $ret;
}
}
class Bb extends Main {
function blahB() {
// blah blah
}
function testB() {
$ret[] = $this->blahB(); // Call inside class
$ret[] = $this->Aa->blahA(); // Call outside class
$ret[] = $this->Cc->blahC(); // Call outside class
return $ret;
}
}
class Cc extends Main {
function blahC() {
// blah blah
}
function testC() {
$ret[] = $this->blahC(); // Call inside class
$ret[] = $this->Aa->blahA(); // Call outside class
$ret[] = $this->Bb->blahB(); // Call outside class
return $ret;
}
}
基本上我想管理我的类设计,以便Aa 类中的方法也可以在Bb 类中重用,反之亦然。
我很好奇,如何像我上面的类那样建立关系,如何extends 类来获得上述模式?这种模式的名称是什么?也请给我一个链接,我可以从中学习。
非常感谢,
【问题讨论】:
-
阅读有关设计模式的文章到底是如何将您引向这个怪物的?我认为您需要阅读 en.wikipedia.org/wiki/Anti-pattern 下一个。
-
这个模式叫什么名字?我很好奇,真的
-
仅将维基百科用于首次条目研究。然后在你发现它是正确的主题之后,获取一篇文章所依据的书籍。
标签: php oop class design-patterns