0

有没有区别

class foo {
    public $bar = 'baz';
     }

class foo {

    public $bar;

    public function __construct()
    {
        $this->bar = 'baz';
    }
}
4

4 回答 4

2

是,有一点不同...

始终使用constructor初始化变量的方式。下面的示例在您的第一个方法上引发错误。

class foo {
    public $bar = $_POST['foo']; //Error will be thrown
     }

class foo {

    public $bar;

    public function __construct()
    {
        $this->bar = $_POST['foo']; // Works just fine
    }
}
于 2013-11-10T04:59:58.670 回答
1

最初没有任何区别..

于 2013-11-10T04:59:52.313 回答
0

使用参数是如何最大化构造函数的概念的方式,

如:

class foo {

    private $bar;

    public function __construct($bar)
    {
        $this->bar = $bar;
    }

    public function getBar()
    {
        return $this->bar;
    }
}

$foo = new foo("daison12006013");
echo $foo->getBar();
于 2013-11-10T04:59:04.793 回答
0

不是我知道的。PHP没有final像java那样的概念,所以方法可以随时改变。无论您是否在构造函数中执行此操作都不会影响任何事情

于 2013-11-10T04:54:32.190 回答