【发布时间】:2010-11-08 08:38:47
【问题描述】:
我是 OOP 范式的新手,所以这个问题可能有一个简单的解释......
您总是需要在类中声明公共对象范围的变量吗?例如:
<?php
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 . "<br />";
echo $this->undeclaredVar;
echo "<br /><br />";
}
}
$test = new TestClass;
$test->display();
$test->declaredVar = "The declared variable was changed.";
$test->undeclaredVar = "The undeclared variable was changed.";
$test->display();
?>
在这段代码中,即使$declaredVar 是唯一声明的变量,$undeclaredVar 也同样可访问和可用——它似乎就像我已将其声明为公共一样。
如果未声明的类变量总是可以这样访问,那么预先声明它们有什么意义呢?
【问题讨论】: