【发布时间】:2013-06-13 13:21:08
【问题描述】:
好吧,我不明白为什么这段代码可以工作
class MyObject {
public function myBaseMethod()
{
echo 'I\'m declared in' . __CLASS__;
}
}
$instance = new MyObject();
$instance->myBaseMethod();
MyObject::myBaseMethod();
// Output
I'm declared inMyObject
I'm declared inMyObject
我可以通过创建 MyObject 类的新实例或作为静态方法调用 myBaseMethod()。但是 myBaseMethod 没有声明为静态的。
我认为我只能将 :: 用于静态成员/方法。
请解释一下
【问题讨论】:
-
刚刚在我的本地主机上运行了您的代码并得到了错误。所以只要坚持你所知道的。这可能是你的 php 设置。
标签: php class oop methods static