|
|
|
| Есть такое понятие как абстрактные методы
они нужны когда в родителском классе нельзя задать общее поведение(методы)
Но не совсем понятно зачем это нужно когда в дочернем классе можно переопределить метод родительского класса?
Я что то не уловил подскажите что именно?
Первый случай когда методы в родетельском классе присутствуют
и переопределяются в дочернем.
Тут есть методы типа по умолчанию как я понял
Второй случай когда в родительском классе присутствует абстрактные методы
и переопределяются в дочернем.
А тут нет методов по умолчанию.
А что плохого если будут методы по умолчанию ведь в дочернем классе при желании можно переопределить ? | |
|
|
|
|
|
|
|
для: chip
(09.11.2004 в 16:09)
| | Иногда необходиом жёстко потребовать переопределение метода, чтобы программист наследующий от класса не забыл его переопределить - для этого как раз и предназначены абстрактные методы - без их переопределения не получится относледовать класс-наследник. | |
|
|
|
|
|
|
|
для: cheops
(09.11.2004 в 21:03)
| | А как обычно делается так чтобы если кто то другой делает дочерний класс не забыл переопределить методы?
Ну описывать весь класс или писать в родительском классе коментарии это два решения .
А как обычно осуществлется вывод ошибки "Вы неопределили методы в дочернем классе". Или таковое сообщение выводит сам PHP (на английском языке оное выведет а тобыло бы на русском :) ) | |
|
|
|
|
|
|
|
для: chip
(10.11.2004 в 07:10)
| | Нет на русском нельзя - будет обычная ошибка PHP... | |
|
|
|