A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 王小乖 中级黑马   /  2015-4-1 12:11  /  949 人查看  /  5 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

在new子类对象的时候,子类的构造函数如果没有写父类的构造函数语句的话,系统会默认自动调用父类的构造函数,那这自动调用,算不算是创建了一个父类的对象呢?

评分

参与人数 1技术分 +1 收起 理由
lwj123 + 1 这个问题问的好!

查看全部评分

5 个回复

正序浏览
这种问题只需要参看最权威(没有之一)的Java语言规范和Java虚拟机规范即可:

调用父类构造函数属于这里列出来的情况之一吗?
当然,不排除其中可能涉及String或装箱,但就一般意义上来说,调用父类构造函数不属于上面列出来的任何一种情况,也就没有创造父类对象

评分

参与人数 1技术分 +1 收起 理由
lwj123 + 1 很给力!

查看全部评分

回复 使用道具 举报
这要看你是用的 A a=new A() 还是用的A a=new B() 进行实例化的。
回复 使用道具 举报
不算,子类继承了父类当然也就继承了父类的构造函数,子类没有写父类构造函数语句系统自动调用父类构造函数,此时这个构造函数时子类的成员,new的还是子类对象

点评

构造函数是不能被继承的  发表于 2015-4-1 15:39
回复 使用道具 举报
概念性问题,算是创建了一个父类对象。
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马