Re: Re: Classes and parents.

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Jochem Maas wrote:

Dmitry wrote:

Thanks,
but I think that this code more easy.

class a {
 function say() { echo "A"; }
 function run() { $this->say(); }
}
class b {
 function say() { echo "B"; }
 function run() {
    $a = new a;
    $a->run();


for starters b doesn't even extend a
and secondly the b::run() method is creating an object
on each invocation - not exactly good use of OO.

besides which b::run() is creating an object of an arbitrary
class, assuming b was supposed to extend a in your example above
the you have hardcoded the parent into the subclass, thats plain wrong...

my example wasn't a specific solution to your problem but an example of 3 ways to acomplish the goal of calling the version of a method in the super class. if you didn't understand something just ask.

    }
}

$obj = new b;
$obj->run();


class a { function say() { echo "A"; } function run() { self::say(); } }

class b {
   function say() { echo "B"; }
   function run() {
      parent::run();
   }
}

would work fine though, I think :)

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


[Index of Archives]     [PHP Home]     [Apache Users]     [PHP on Windows]     [Kernel Newbies]     [PHP Install]     [PHP Classes]     [Pear]     [Postgresql]     [Postgresql PHP]     [PHP on Windows]     [PHP Database Programming]     [PHP SOAP]

  Powered by Linux