* Thus wrote Marek Kilimajer:
> Chris wrote --- nap�sal::
> >if anyone can, would you please explain why the below code does what it
> >does? I would expect $this->test in TestInstance to refer to the
> >inherited $test from Test. Using php5RC3. Thanks.
> >
> ><?php
> >abstract class Test {
> > private $test;
> > abstract public function addToTest($i);
> >}
> >
> >class TestInstance extends Test {
> > public function __construct() {
> > $this->test = 0;
> > }
> ...
>
> The variable is private for Test, so TestInstance does not have access
> to it. By assigning 0 to $this->test in the constructor of TestInstance,
> you create a new property of TestInstance that is public (the default).
>
> var_dump() shows it clearly:
> object(TestInstance)#1 (2) {
> ["test:private"]=> NULL <---- belongs to Test
> ["test"]=> int(3) <---- belongs to TestInstance
> }
I think one could argue that that test:private shouldn't even be
there. To me that test:private would imply that is TestIntance's
private variable.
Curt
--
First, let me assure you that this is not one of those shady pyramid schemes
you've been hearing about. No, sir. Our model is the trapezoid!
--
PHP General Mailing List (http://www.php.net/)
To unsubscribe, visit: http://www.php.net/unsub.php