public function charge(SELF::бензиномобиль);
Форум → Программирование → PHP для идиотов → ООП в PHP5
ООП в PHP5
Страницы: ← Предыдущая страница • Следующая страница →
-
7 ноября 2010 г. 19:28, спустя 3 минуты 50 секунд
Сапожник без сапог -
7 ноября 2010 г. 19:31, спустя 3 минуты 8 секунд
public function charge(SELF::бензиномобиль);
а как правильно? -
7 ноября 2010 г. 19:32, спустя 49 секунд
Mars, возьми пример с HDD и отталкивайся от негоне всё полезно, что в swap полезло -
7 ноября 2010 г. 19:41, спустя 8 минут 35 секунд
<?php class бензиномобиль implements заправка_бензином {} class электромобиль {} interface заправка_бензином {} class бензозаправка { public function charge(заправка_бензином $object) { echo 'заправился на отличненько<br>'; return true; } } function заправить_машину($car) { if (@бензозаправка::charge($car)) echo 'иди нахуй!<br>'; } $машина = new бензиномобиль; $электромашина = new электромобиль; заправить_машину($машина); заправить_машину($электромашина);
-
7 ноября 2010 г. 19:57, спустя 16 минут 44 секунды
вернее так<?php class бензиномобиль implements заправка_бензином {} class электромобиль {} interface заправка_бензином {} class бензозаправка { public function charge(заправка_бензином $object, $id) { echo "$id заправился на отличненько<br>"; return true; } } $машина = new бензиномобиль; $электромашина = new электромобиль; бензозаправка::charge($машина, 1); бензозаправка::charge($машина, 2); бензозаправка::charge($электромашина, 3); бензозаправка::charge($машина, 4);
Спустя 209 сек.Почему свои псто нельзя редактировать? говно движок форума -
7 ноября 2010 г. 19:59, спустя 1 минуту 55 секунд
Почему свои псто нельзя редактировать? говно движок форума
просто у тебя говноправа на форуме. -
7 ноября 2010 г. 20:04, спустя 4 минуты 51 секунду
А как правильно отловить ошибку?
Catchable fatal error: Argument 1 passed to бензозаправка::charge() must implement interface заправка_бензином, instance of электромобиль given -
7 ноября 2010 г. 20:11, спустя 7 минут 20 секунд
туплю, сделал вот так<?php class бензиномобиль implements заправка_бензином {} class электромобиль {} interface заправка_бензином {} class бензозаправка { public function charge($object, $id) { echo ($object instanceof заправка_бензином) ? "$id заправился на отличненько<br>" : "$id fail<br>"; } } $машина = new бензиномобиль; $электромашина = new электромобиль; бензозаправка::charge($машина, 1); бензозаправка::charge($машина, 2); бензозаправка::charge($электромашина, 3); бензозаправка::charge($машина, 4);
-
7 ноября 2010 г. 20:14, спустя 2 минуты 34 секунды
Так и должно быть, нельзя заправлять электромобиль на бензозаправке
А как правильно отловить ошибку?
Catchable fatal error: Argument 1 passed to бензозаправка::charge() must implement interface заправка_бензином, instance of электромобиль given
зы английский ты тоже также учишь как и пхп? =)Work, buy, consume, die -
7 ноября 2010 г. 20:24, спустя 9 минут 33 секунды
Mars,<?php interface заправка_бензином {} interface заправка_электричеством {} class бензиномобиль implements заправка_бензином {} class электромобиль implements заправка_электричеством {} class бензозаправка { public function charge(заправка_бензином $object) { echo "заправился на отличненько" } } $машина = new бензиномобиль; $электромашина = new электромобиль; бензозаправка::charge($машина); бензозаправка::charge($электромашина);
не всё полезно, что в swap полезло -
8 ноября 2010 г. 13:34, спустя 17 часов 10 минут 47 секунд
Щас рыба прийдет, на определениях всех победит))
а вот и нет. Я в этой ООПшной теории не силен. Ну, что такое полиморфизм я вам не расскажу.
зы: профи, тут недавно на собеседовании у товарища был вопрос - чем класс от объекта отличается? -
8 ноября 2010 г. 13:38, спустя 3 минуты 23 секунды
чем?Спустя 17 сек.зы: я не профиСпустя 20 сек.зы: и вообще не хочу я быть программистомСпустя 28 сек.я хочу спатьСпустя 16 сек.сплю -
8 ноября 2010 г. 13:59, спустя 20 минут 54 секунды
Полиморфизм, это свойство ООП, которое позволяет адресовать методы у объектов тип которых точно не известено, но известна информация об интерфейсе или абстрактном классе как типе предка объекта (это что касаем PHP):$polymorf = $this->getDb() $polymorf->select(); //известно что AbstractDB имеет абстрактный метод select() и все, а какого конкретно типа переменная $polymorf - MysqlDb или PgsqlDb не важно и не известно в этой точке, да и с полиморфизмом не требуется знать…
Класс или тип - это описание сущьности, объект - это структура в памяти ;) -
8 ноября 2010 г. 14:03, спустя 4 минуты 36 секунд
тут недавно на собеседовании у товарища был вопрос - чем класс от объекта отличается?
ты это с подьебом спрашиваешь или ты действительно не знаешь разницы ? -
8 ноября 2010 г. 14:06, спустя 2 минуты 54 секунды
ну блин, так получилось, что я работаю не зная основополагающих принципов
Страницы: ← Предыдущая страница • Следующая страница →
Пожалуйста, авторизуйтесь, чтобы написать комментарий!