> On 9/24/2010 4:09 AM, Gary wrote:
>> Daniel Kolbo wrote:
>>> Say you have two classes: human and male.  Further, say male extends
>>> human.  Let's say you have a human object.  Then later you want to make
>>> that human object a male object.  This seems to be a pretty reasonable
>>> thing to request of our objects.
>> I don't think any human can change gender without major surgery, but I
>> don't know if you just chose your example badly or whether you really
>> think objects should be able to mutate into other types of object
>> without some kind of special treatment.
>>> This type of thing would especially be
>>> easy if objects of parent classes could be cast as an object of its
>>> extended class.
>> Where would the extra data come from to fill in any fields the base
>> class does not have? Just think of a simple example with a Shape class,
>> extended by a ColouredShape class which contains some data about the
>> object's colour - if you have a Shape object it can't become a
>> ColouredShape without some surgery because bits of the ColouredShape's
>> anatomy are not present.
>> --
>> Gary        Please do NOT send me 'courtesy' replies off-list.
>> PHP 5.2.12 (cli) (built: Jan 14 2010 14:54:11)
>> 1.7.7(0.230/5/3) 2010-08-31 09:58 Cygwin
> The colouredShape class would probably have a member variable called
> $color.  This member could have a default value (as defined in the
> class), be defined through the __construct() method (which would be
> invoked upon such a cast procedure...perhaps there could be a __cast()
> method much like how there is a __clone() method.

PHP General Mailing List (http://www.php.net/)
To unsubscribe, visit: http://www.php.net/unsub.php

Reply via email to