vitaly_74
@vitaly_74

Зависит ли класс А от Б в данном случае?

class A 
{
   _construct( B $class = null)
     {
     ...
     }

так вот мы же можем создать экземпляр класса A без необходимости создавать класс Б
  • Вопрос задан
  • 94 просмотра
Пригласить эксперта
Ответы на вопрос 1
Ninazu
@Ninazu
Зависит! Чтоб не зависел, используйте интерфейсы

interface D {

	public function execute();
}

class B implements D {

	public function execute() {
		return "This is B";
	}
}

class C implements D {

	public function execute() {
		return "This is C";
	}
}

class A {

	public function __construct(D $class = null) {
		if (!is_null($class)) {
			echo $class->execute();
		}
	}
}

new A();
new A(new B());
new A(new C());
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы