$GLOBALS在构造方法里能用为什么普通方法里不行?

$GLOBALS['a']=12;
class A{

public function __construct(){
echo $GLOBALS['a'];//输出12
}
public function aa(){
echo $GLOBALS['a'];

}
}
$a=new A;
$a->aa();

在构造方法里输出12 在普通方法里为什么报错
Catchable fatal error: Object of class A could not be converted to string in D:\phpStudy\WWW\lianxi.php on line 9

墨色风雨
浏览 496回答 2
2回答

凤凰求蛊

构造方法:一个类 被实例化 也就是被new的时候 最先执行的是 构造方法,在java类中,如果不显示声明构造函数,JVM 会给该类一个默认的构造函数。一个类 可以有多个构造函数。构造函数的主要作用 一是用来实例化该类。二是 让该类实例化的时候执行哪些方法,初始化哪些属性。当一个类声明了构造函数以后,JVM 是不会再给该类分配默认的构造函数。

烙印99

构造方法:一个类 被实例化 也就是被new的时候 最先执行的是 构造方法,在java类中,如果不显示声明构造函数,JVM 会给该类一个默认的构造函数。一个类 可以有多个构造函数。构造函数的主要作用 一是用来实例化该类。二是 让该类实例化的时候执行哪些方法,初始化哪些属性。当一个类声明了构造函数以后,JVM 是不会再给该类分配默认的构造函数。其实构造函数是用来对一个类以及变量进行实例化。
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Java