JAVA中super()作用:调用父类构造方法和构造方法链
来源:互联网 发布:网页游戏编程课程 编辑:程序博客网 时间:2024/06/06 17:10
JAVA中super()作用:调用父类构造方法和构造方法链
写给自己看的笔记。
写在纸上我会弄丢。
有什么错误欢迎大家提出。
public class Test extends B { public static void main(String[] arg) { new Test(2);// 生成一个类Test的匿名对象,调用构造函数Test(int n) } public Test(int n) {// 会默认在这个方法的第一行执行super(),即调用父类的无参数构造方法B() System.out.println("Test的有参数构造函数,参数是" + n); }}class B extends C { public B() {// 会默认在这个方法的第一行执行super(),即调用父类的无参数构造方法C() super(3);// 指定了父类构造函数super(int c),则不会再使用无参数构造函数super() System.out.println("B的无参数构造函数"); }}class C { C() {// 构造函数一般是public,public可写可不写 System.out.println("C的无参数构造函数"); } public C(int c) { System.out.println("这是有参数的构造函数,参数是" + c); }}
执行new Test(2)时,调用了B(),B()又调用了用super指定的构造方法C(int c),构成了一条构造方法链。
输出顺序:
这是有参数的构造函数,参数是3
B的无参数构造函数
Test的有参数构造函数,参数是2
ps:如果定义一个类的时候不写构造函数,会隐式生成一个的无参数构造函数,子类的构造方法中依旧会调用这个隐式构造函数
参考:《JAVA语言程序设计-基础篇》原书第8版
0 0
- JAVA中super()作用:调用父类构造方法和构造方法链
- java 构造方法中super()的作用
- super关键字调用父类构造方法
- python中通过super()调用父类构造方法
- 构造方法中super()的作用
- 使用Java的子类调用构造方法super()和this()
- java中构造方法和作用
- 记住调用super类的构造方法!
- Java继承中默认调用父类的无参构造方法的作用
- 构造方法中调用父类中的构造方法
- java构造方法与super
- [java]构造方法super() this()
- java-构造方法-super关键字
- 静态,构造方法和super
- 重写父类方法、super关键字、调用父类构造器——Java
- 第五章 类的继承和super的使用调用父类构造方法
- 构造方法 -- super()方法
- Java---java中构造方法及其作用
- 初学Opencv的认识一些经验总结
- ONOS源码笔记--机制
- ios过滤emoji表情
- android中微信、朋友圈分享无回调的问题
- 项目前端知识点总结1
- JAVA中super()作用:调用父类构造方法和构造方法链
- Android的Setting的显示加载分析
- MYSQL 视图操作
- CoreText 进阶
- [bzoj3675] [Apio2014]序列分割 Split the sequence dp+斜率优化
- (4.3.2.6)ScrollView内嵌套ListView时禁止ListView的滚动
- Silverlight DataGrid 绑定的多选、全选
- c++对内存的浅谈以及内存泄漏问题的探讨之四
- jQuery源码解析(架构与依赖模块)笔记二--核心模块