为了账号安全,请及时绑定邮箱和手机立即绑定

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

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

墨色风雨 2018-07-29 16:05:50
$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
查看完整描述

2 回答

?
凤凰求蛊

TA贡献1825条经验 获得超4个赞

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

查看完整回答
反对 回复 2018-08-10
?
烙印99

TA贡献1829条经验 获得超13个赞

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

其实构造函数是用来对一个类以及变量进行实例化。

查看完整回答
反对 回复 2018-08-10
  • 2 回答
  • 0 关注
  • 489 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信