当前位置: 代码迷 >> J2SE >> 菜鸟,两小疑点
  详细解决方案

菜鸟,两小疑点

热度:53   发布时间:2016-04-24 00:42:02.0
初学者,两小问题
为什么 super(...)和this(...)调用语句不能同时在一个构造函数中出现?
为什么 super(...)和this(...)调用语句只能作为构造函数中的第一句出现?

------解决方案--------------------
按照JAVA语法规定,在创建对象时,首先它要对成员变量进行默认初始化,然后进入构造函数绑定参数之后,进入构造函数内,这时如果有super()则执行super(),如果没有则看是否有this(),如里有执行否则往下执行函数内以下的程序。this和super的调用都必须是放第一句,所以不能同时调用,否则会冲突,只能选一个。至于为什么只能在构造函数的第一句出现是JAVA的语法规定。
  相关解决方案