我是对OOP范例的新手,所以这个问题可能有一个简单的解释…
你总是需要在类中声明公共对象范围的变量吗?例如:
class TestClass
{
var $declaredVar;
function __construct()
{
$this->declaredVar = "I am a declared variable.";
$this->undeclaredVar = "I wasn't declared, but I still work.";
}
function display()
{
echo $this->declaredVar . "
";
echo $this->undeclaredVar;
echo "
";
}
}
$test = new TestClass;
$test->display();
$test->declaredVar = "The declared variable was changed.";
$test->undeclaredVar = "The undeclared variable was changed.";
$test->display();
?>
在这段代码中,即使$ declaredVar是唯一的声明变量,$ undeclaredVar也是可访问和可用的 – 似乎似乎已经声明为public。
如果未声明的类变量总是可访问的,什么是声明它们所有前面?