There's a big difference. Inherited classes should adhere to the instanceof operator. Meaning that if you get an object you can check if it's an instance of another class and if so, you can call it *exactly* the way you could the parent class. This allows for good polymorphic design in applications. Allowing subclasses to change a function's signature to be incompatible with its parent would break this rule (you can use default arguments to resolve some of these cases as instanceof remains). For constructors it actually makes sense because at the time of instantiaton, you know what the concrete class is. It is very common for constructors to be very much different in polymorphic classes.
Andi > -----Original Message----- > From: Richard Quadling [mailto:[EMAIL PROTECTED] > Sent: Friday, July 21, 2006 3:43 AM > To: internals@lists.php.net > Subject: Re: [PHP-DEV] RfC: rethink OO inheritance strictness > > Exactly. Consistency. > > On 21/07/06, Daine Mamacos <[EMAIL PROTECTED]> wrote: > > If a constructor gets overridden, why should it not be the same > > behaviour with all methods? > > > -- > ----- > Richard Quadling > Zend Certified Engineer : > http://zend.com/zce.php?c=ZEND002498&r=213474731 > "Standing on the shoulders of some very clever giants!" > > -- > PHP Internals - PHP Runtime Development Mailing List To > unsubscribe, visit: http://www.php.net/unsub.php > -- PHP Internals - PHP Runtime Development Mailing List To unsubscribe, visit: http://www.php.net/unsub.php