所以我有以下问题:为什么 PHP 不允许类变量被实例化为对象,这可能是错误的问题,所以我将展示一些代码来澄清我的意思。
在java中你可以做到这一点
private ServerSocket serverSocket;
但是在 PHP 中,如果你尝试做类似下面的事情
private $var = \MY_CLASS
它将抛出语法错误,您必须通过构造函数实例化它。 我的意思是在java中你还需要通过构造函数实例化变量..
最佳答案
大多数解释器 - 包括 PHP - 都是一种具有“自由类型数据”(松散类型语言)的语言:
Strong and weak typing What is the difference between a strongly typed language and a statically typed language?
这只是构建语言翻译器的实践方法之一。
这并不意味着它不好。这只是意味着在设计应用程序的架构时,您要负责控制数据的正确性。
但是前面已经提到过,您可以使用注释机制来描述您想要执行的操作
关于java - 为什么 PHP 不允许将类变量指定为对象?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35337057/