php наследование
надо сделать, чтобы можно было обращаться так:
Код:
$classU = new classU('class1');
$classU->someMethod();
$classU->someMethod();
someMethod есть в обоих классах (class1 и class2), но какой из классов должен наследовать classU должно определятся конструктором..
Про наследование в РНР на оффсайте почитать никак?
дык я прочитал.. у меня единственная идея реализации - сделать класс наследником от обоих и класс-загрузчик, который будет подгружать файл с одним из описанных классов и пустым описанием другого)
Опиши задачу полностью (не что ты написал, а задачу, которую ты решаешь таким образом)
Как я понял class1 и class2 имеют общий интерфейс а classU должен вести себя то как 1 то как 2. Я решал эту проблему агрегацыей. Выделял общий интерфейс interfaceU, реализировал его в class1 и class2.
classU в таком случае будет оберткой и будет инкапсулировать в себе екземпляр интерфейса interfaceU и с помощю перегруженного __call и рефлексии будет дергать нужный метод из агрегата. Ну а дальше дело фантазии.
только при таком подходе в конструктор передается не название класса, а его екземпляр.
Rebbit правильно описал... с экземпляром идея понятна.. если есть в себе нужный метод, то вызываем, иначе вызываем метод из переданного класса... а хотелось бы не создавать лишних экземпляров... хотя если по другому никак то тоже можно..