当前位置: 首页 > news >正文

java 继承super

在java继承中,如果子类继承父类,在子类中要给用构造器给父类的属性赋值,需要用到 super

 举例,Son类继承Father 类,便于理解

在 new Son(String name, int age) 传入name,和age的值

将会调用Son这个构造器,将name,age传入super,传给父类的两参构造器

 传入name:jack,age:100

 如果我不传参数,去调用无参构造器

 修改了一些代码,我在Son构造器中并没有写super,看运行结果

 运行结果,Father构造器任然被调用,因为如果调用父类无参构造器,super就可以不写,系统默认在Son构造器中创建了 super();

 但是如果父类并没有定义无参构造器,只有哪一个两参构造器,那么就会报错

代码相当于这样:

super();无参,但是父类构造器却是两参,不匹配,所以报错

 

 另外需要注意的点:1.super这个语句必须要放在构造器的首行,不然也会报错

2.因为super是在构造器首行,所以是在遇到super就跳到父类的构造器,父类构造器执行完再返回到子类,继续执行,所以你看到的输出顺序是先Father,后Son

http://www.lryc.cn/news/44091.html

相关文章:

  • Java学习笔记——多态
  • Python处理JSON数据
  • JVM信息查询命令
  • redis 面试题
  • SpringCloud微服务技术栈.黑马跟学(十二)
  • HashMap集合存储学生对象并遍历
  • “提效”|教你用ChatGPT玩数据
  • https://app.hackthebox.com/machines/Inject
  • Java Web 实战 15 - 计算机网络之网络编程套接字
  • 基于pdf2docx模块Python实现批量将PDF转Word文档(安装+完整代码教程)
  • 3.21~3.22
  • Chromium 改造实录:增加 MPEG TS 格式支持
  • 性能优化之-事件代理
  • MSDS 即化学品安全说明书
  • 真人手办没法实现网购?我有一个好办法!
  • 2019湖南省大学生程序设计竞赛题解(D)
  • 【开发】中间件——RocketMQ
  • 36 UnitTest框架 - 参数化
  • Qt源码阅读(四) 事件循环
  • 银行数字化转型导师坚鹏:银行数字化领导力提升之道
  • Vue2 -- 自定义单选内容的单选框组件
  • 让PyTorch训练速度更快,你需要掌握这17种方法
  • LeetCode-309. 最佳买卖股票时机含冷冻期
  • AUTOSAR知识点Com(七):CANSM初认知
  • 递归:斐波那契数列、递归实现指数型枚举、递归实现排列型枚举
  • oracle模糊查询时字段内容包含下划线的解决办法
  • C++:explicit关键字
  • 【C5】bmc wtd,post
  • 200.Spark(七):SparkSQL项目实战
  • 区块链系统:挖矿原理