СТ
Size: a a a
СТ
A
𝓙
A
𝓙
𝓙
a
ДК
ДК
a
abstract class Test
{
abstract public function go(Test $test);
}
class One extends Test
{
public function go(Test $test)
{
//
}
}
class Two extends Test
{
public function go(Test $test)
{
//проверить что переданый $test не является определенным экземпляром класса Two
}
}
$one = new One();
$two1 = new Two();
$two2 = new Two();
$two3 = new Two();
$two1->go($one); //ok
$two2->go($two1); //ok
$two3->go($two2); //exception
S
S
S
S
ДК
S
ДК
ДК
S
R