Java继承中的构造器实现
来源:互联网 发布:淘宝卖家交流群 编辑:程序博客网 时间:2024/06/06 06:40
首先要说明的是,子类构造器执行时一定会先隐式或显式地调用父类的某一构造器。以下分情况进行说明。
- 父类没有显式定义构造器,子类也没有显式定义构造器,或者显式定义了构造器,但是在定义的构造器中没有显式调用父类构造器,则在执行子类构造器代码时(也就是初始化的时候),会在第一行最先隐式地调用父类默认构造器,然后执行子类构造器代码。
- 父类没有显式定义构造器,子类显式定义了构造器,并且在子类构造器代码中显式地调用了父类默认构造器(无参)时,则只能在第一行进行调用(即为最先执行的代码),否则会有错误提示(Constructor call must be the first statement in a constructor)。因为如果不是在第一行显式调用父类构默认造器而是在后面调用,一进入子类构造器方法体则会调用一次父类默认构造器,等到执行到后面显式调用父类默认构造器的代码处时,就会发生重复两次调用同一个构造器这样的恶劣情况,为了避免,所以若要在子类构造器中显式调用父类构造器,则必须在第一行声明。同理,若要在构造器中显式调用本类其他构造器时,为了防止发生同样的错误,也必须在第一行声明。
- 父类显式定义了无参构造器,子类构造器无需做出相应改变,因为该无参构造器就是父类默认构造器。
- 父类显式定义了有参构造器(没有定义无参构造器),子类构造器则必须显式调用父类已经定义的构造器之一,否则会有错误,因为父类已经没有默认无参构造器存在了。
0 0
- Java继承中的构造器实现
- java继承中的构造器调用
- 继承中的构造器
- java 继承中的构造方法
- java继承中的构造方法
- [java]继承中的构造函数
- JAVA继承中的构造函数
- java继承中的构造方法
- Java继承中的构造方法
- Java继承中的构造方法
- java继承中的构造方法
- java继承中的构造方法
- Java继承中的构造方法
- Java中的构造器、继承、多态知识
- 面向对象 -- 继承和Java中的构造器
- Java类继承中的构造函数问题
- Java学习笔记--继承中的构造方法
- java之继承中的构造方法
- Android学习小记----监听电量的变化(不能静态注册的广播), 保持Service不被杀死的好方法
- CSS3中的animation详解
- C# Lambda表达式
- pdf文件怎么转换成word文档格式
- springMVC+hibernate+springdata+querydsl框架构建详解
- Java继承中的构造器实现
- mybatis学习详细动态sql语句示范
- Mathematica 11.0中的一些新特性
- 谈谈这一年来做项目的经历(1)
- AWT-2
- face++的开发包faceppsdk.jar 和httpclient.jar 冲突解决
- STL学习小结
- unity本地网络下载工具-HFS文件服务器教程
- Android Studio 小技巧合集