静态成员可以使用非静态成员,反之亦然?

时间:2010-02-04 23:54:36

标签: php oop class

我可以在静态方法中使用非静态成员吗​​?

例如

 $this->nonStaticProperty
 $this->nonStaticMethod()

反过来也就是说在非静态方法中使用静态成员?

3 个答案:

答案 0 :(得分:3)

由于静态成员没有实例,因此无法调用实例方法(除非在该方法中创建实例)。

答案 1 :(得分:3)

来自http://php.net/manual/en/language.oop5.static.php

  

将类属性或方法声明为静态使它们可以访问,而无需实例化类。声明为static的属性无法使用实例化的类对象访问(尽管静态方法可以)。

您不能在静态函数中使用非静态成员,因为它们不在函数范围内。但是你可以在非静态函数中使用静态成员。

答案 2 :(得分:0)

不是真的,因为你不能在静态环境中使用$ this。