Помощник
|
Как понять ООП? |
PrsDevs |
24.10.2019, 10:52;
Ответить: PrsDevs
Сообщение
#12
|
|
x64, не совсем так. Например, self и this. Self смотрит на свой экземпляр класса, а this так же и на родителей.
WoWeb, тут много чего не так если честно. Например, id надо присваивать в конструкторе. Clearall делать статик функцией. П. С. могу объяснить что, зачем и как. Напиши в ЛС скайп. Вот мой если что, не могу лс писать live:.cid.aec3570a9c0e0903 Сообщение отредактировал PrsDevs - 24.10.2019, 11:01 -------------------- Карты Сбербанка 4274320049958518 5469300810181286 Имя - Максим Город - Севастополь Почты: maksym2017maksym@gmail.com prsdevs@ya.ru Телеграм @prsonic |
|
|
x64 |
24.10.2019, 11:42;
Ответить: x64
Сообщение
#13
|
|
|
|
|
PrsDevs |
24.10.2019, 12:07;
Ответить: PrsDevs
Сообщение
#14
|
|
Цитата(PrsDevs @ 24.10.2019, 9:52) Self смотрит на свой экземпляр класса self не смотрит на экземпляр, он служит для обращения к методам/полям класса. С экземплярами работает $this. Если уж решили поумничать, хоть базовые вещи не перевирайте. Тогда поясните такой момент, вот код. Код class Person { private $name; public function __construct($name) { $this->name = $name; } public function getName() { return $this->name; } public function getTitle() { return $this->getName()." the person"; } public function sayHello() { echo "Hello, I'm ".$this->getTitle()."<br/>"; } public function sayGoodbye() { echo "Goodbye from ".self::getTitle()."<br/>"; } } class Geek extends Person { public function __construct($name) { parent::__construct($name); } public function getTitle() { return $this->getName()." the geek"; } } $geekObj = new Geek("Ludwig"); $geekObj->sayHello(); $geekObj->sayGoodbye(); Выведет: Hello, I'm Ludwig the geek Goodbye from Ludwig the person Почему так? Почему они выведут разные значения... Если я как вы выразились вру... -------------------- Карты Сбербанка 4274320049958518 5469300810181286 Имя - Максим Город - Севастополь Почты: maksym2017maksym@gmail.com prsdevs@ya.ru Телеграм @prsonic |
|
|
Gerga |
27.10.2019, 5:49;
Ответить: Gerga
Сообщение
#15
|
|
|
Self смотрит на свой экземпляр класса, а this так же и на родителей. Self - это ссылка на текущий класс. Обращаясь к self, вы обращаетесь к классу. Простой пример: Код class Test { public function isTest() { return $this instanceof self; } } $test = new Test(); echo $test->isTest(); Будет выведено 1. Метод "isTest" идентичен подобной проверке: Код $test instanceof Test Почему так? Почему они выведут разные значения... Потому что в данном случае self из класса "Person" ссылается на класс "Person".
Сообщение отредактировал Gerga - 27.10.2019, 5:52 |
|
|
||
|
Похожие темы
Тема | Ответов | Автор | Просмотров | Последний ответ | |
---|---|---|---|---|---|
Как вы отдыхаете от работы за компом | 151 | adw-kupon.ru | 19822 | Вчера, 13:52 автор: Vmir |
|
Как вы бросили работу и перешли на заработок с сайтов? | 20 | uahomka | 3449 | Вчера, 11:54 автор: Skyworker |
|
Как в пушсетках покупают по 100-200 тысяч кликов за день? | 1 | Boymaster | 520 | Вчера, 11:45 автор: Skyworker |
|
Как вывести деньги в Украине с заблокированного Юмани ? | 30 | freeax | 5017 | 20.4.2024, 16:49 автор: Liudmila |
|
Арбитражники, как ведете учет расходов и доходов? | 13 | Boymaster | 2022 | 20.4.2024, 15:06 автор: Boymaster |
Текстовая версия | Сейчас: 24.4.2024, 5:16 |