Isn't that why we have interfaces and abstract functions? (I realize that that would remove the possibility to define a fallback function in the parent class though.)
- Ron ""Soenke Ruempler"" <[EMAIL PROTECTED]> schreef in bericht news:[EMAIL PROTECTED] > Richard Quadling <mailto:[EMAIL PROTECTED]> wrote on Friday, July > 21, 2006 12:28 PM: > >> Shouldn't be necessary. As there are 2 different methods, they should >> be allowed different parameter signatures. If you want to extend a >> method but hide original implementation, you can't change the >> parameter signature. I'm on the opposite side of the fence to you it >> seems! > > But that's not the nature of polymorphism and the predictness and > consistency of an API. For example - think of object aggregation: > > public function setBlub(A $a) { > $this->_a = $a; > } > > Now because of my consistent API of class A and all derived classes I > exactly know the methods and parameters, even if B (as child class of A) > is passed to "setBlub()". > > So maybe from your POV it's two different methods (and yes, it IS > *technically*). But from OOP and API design view it is polymorphism and > consistency, if I didn't failed all OOP lessons and design pattern books > ;) > > -soenke > -- PHP Internals - PHP Runtime Development Mailing List To unsubscribe, visit: http://www.php.net/unsub.php