[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: Работа с классом
gam0ra
Почему не выводится 2?
class A {
public $a;
}

class B extends A {
$this->a = 2;
}
$b = new A;
echo $b->a;
bestxp
ну потому что ты создал экземпляр класса A а не B
gam0ra
bestxp
Не ну я ж кагбы наследовал класс А в классе В
bestxp
и?

наследование грубо говоря это когда ты создаешь класс Б и туда копируются все возможности из класса А

и класс Б не может никак влиять на класс А
gam0ra
Тоесть изменить и вывести $a из B нельзя чтоли?
bestxp
нет

$a = new A();
$a->a = 100;

$b = new B();
echo $b->a; // выведет 2
echo $a->a; // выведет 100

$c = new A();
echo $c->a; //ничего не выведет


B по сути самостоятельный класс и никак не может менять значения другого класса А
Быстрый ответ:

 Графические смайлики |  Показывать подпись
Здесь расположена полная версия этой страницы.
Invision Power Board © 2001-2025 Invision Power Services, Inc.