1
我有兩個類在它們的構造函數中初始化兩個對象。見下面的例子兩個類的構造函數互相調用
class A
{
function __construct()
{
$this->b=new B();
}
}
class B
{
function __construct()
{
$this->a=new A()
}
有,儘管這樣做並不是這方面的任何解決方案:)
我有兩個類在它們的構造函數中初始化兩個對象。見下面的例子兩個類的構造函數互相調用
class A
{
function __construct()
{
$this->b=new B();
}
}
class B
{
function __construct()
{
$this->a=new A()
}
有,儘管這樣做並不是這方面的任何解決方案:)
這很難回答,因爲這是非常抽象的,但如果我沒有理解好,我會傾向於做:
class A {
function __construct() {
$this->b = new B($this);
}
}
class B {
function __construct(A $a) {
$this->a = $a;
}
}
我想在這裏B是A的一個組成部分。如果不是這種情況,你可能有你的設計有問題。
遞歸循環3000 - >
class A
{
private $b;
function __construct()
{
$this->b=new B();
}
}
class B
{
private $a;
function __construct()
{
$this->a=new A()
}
}
不知道你想什麼與此實現,雖然。
這些對象是否應該互相引用?即,應該'$ this-> b-> a === $ this'? – raina77ow
是的。有一種方法。只是不要這樣做。這是無限遞歸。 '// hint':解釋一下你想要什麼 –
你想要什麼? – Daan