issue with inheriting private property from abstract class in php5rc3
| From: | Chris | Date: | Wed, 23 Jun 2004 17:40:48 +0000 |
| Subject: | issue with inheriting private property from abstract class in php5rc3 | ||
| Groups: | php.general | ||
| Request: | Send a blank email to php-general+get-188910@lists.php.net to get a copy of this message | ||
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;
}
public function addToTest($i) {
$this->test += $i;
}
}
$t = new TestInstance();
$t->addToTest(3);
var_dump($t);
// test var SHOULD be private
echo "private test (shouldn't be able to access it directly, but i can): ".$t->test."\n\n";
/*
output
-------------------------------
object(TestInstance)#1 (2) {
["test:private"]=>
NULL
["test"]=>
int(3)
}
private test (shouldn't be able to access it directly, but i can): 3
*/
?>