надо, конечноАвтор оригинала: Lightning
AmdY
от интерфейса родителя.
-~{}~ 11.07.09 22:24:
Ну нельзя в PHP делать несколько методов с одинаковыми именами и разным списком аргументов. А надо ли? Сложно сделать разные имена?
зачем заведомо ограничивать гибкость языка? почему в сях не так?Автор оригинала: fixxxer
если у тебя descendants требуют инициализации отличной от предков тебе стоит сесть и хорошенько подумать о наследовании и базовых принципах ооп
abstract class phpMorphy_Morphier_Common extends phpMorphy_Morphier_Base {
protected function getAnnotSize() { return 15; }
protected function decodeAnnot($annotRaw) {
/* ... */
}
}
/* обрезанный ниже */
class phpMorphy_Morphier_DictBulk extends phpMorphy_Morphier_Common {
function phpMorphy_Morphier_DictBulk() {
parent::phpMorphy_Morphier_Common($fsa, $graminfo);
//parent::__construct($fsa, $graminfo); // mod
}
}
new phpMorphy_Morphier_DictBulk();
И весь полиморфизм в жопу.Автор оригинала: AmdY
вот, пилот привёл хороший пример, когда предок как раз используется как урезаная версия с ограниченым поведением многофункционального предка.
class B extends A {
public function do($when) {
$what = //
$where = //
return parent::do($what, $where, $when);
}
}
это частности - малая часть, когда м возникнуть конфликтАвтор оригинала: fixxxer
И весь полиморфизм в жопу.
$objects = array(new A, new B);
foreach ($objects as $object) {
$object->do($what); // упс
}