我有一个问题我有一个类通过对象调用另一个类及其方法。我正在创建和复制相同的代码以在每个方法中创建对象。有没有办法在一次创建对象并让所有类方法使用同一个实例?
答案 0 :(得分:0)
您可以创建一个创建新类实例的方法,如: 如果您不需要新实例但希望通过运行时使用相同的实例,则还可以将创建的实例保存在属性中。
class A
{
protected function getB()
{
return new B();
}
public function method1()
{
$this->getB()->doSomething();
}
public function method2()
{
$b = $this->getB();
$b->doSomething();
}
}
class B
{
public function doSomething()
{
return 'something';
}
}