oop php构造函数访问修饰符,哪一个使用?

fis*_*ood 0 php constructor visibility

我刚刚开始尝试使用OO PHP,但有一个基本原则我并没有真正理解它,并且没有找到太多的信息.

在创建__construct()方法时,为什么你想要它public,当它特别是该类的构造函数时?你什么时候想在课外调用构造函数?

对我来说,似乎使用受保护的构造函数是一种很好的做法,对吧?

我知道这是基本的OO东西,但我没有直接找到任何信息,特别是对于构造函数.

dec*_*eze 5

__construct(不是"__constructor")方法是一个当你叫new MyClass(),即当你实例化类.构造函数必须public的,除非你只想从自身内部类实例化.如果是后者,则至少需要一个其他public static方法可以调用,其中类将自己实例化,否则您将无法创建它的任何实例.