首页 > 其他分享 >整理及心得

整理及心得

时间:2022-12-22 14:49:10浏览次数:46  
标签:初始化 调用 构造方法 子类 整理 父类 心得 构造函数

调用关系:

如果一个类具有父类,在类加载的时候都是先加载父类的方法(相当于构造了一个父类对象)

子类继承父类后,获取到父类的属性和方法,这些属性和方法在使用前必须先初始化,所以须先调用父类的构造器进行初始化。在子类构造器的第一行会隐式的调用 super();,即调用父类的构造器

如果父类中没有定义空参的构造器,则必须在子类的构造器的第一行显示的调用super(参数); ,以调用父类中构造器

如果子类中构造器的第一行写了this();,则就隐式的super();会消失,因为super()和this()都只能在构造器的第一行定义

结论:  通过 super 调用基类构造方法,必须是子类构造方法中的第一个语句。

二.思考:为什么子类的构造方法在运行之前,必须调用父类的构造方法?能不能反过来?为什么不能反过来?

构造函数(constructor)是一种特殊的方法 。主要用来在创建对象时初始化对象, 即为对象成员变量赋初始值,总与new运算符一起使用在创建对象的语句中 。特别的一个类可以有多个构造函数 ,可根据其参数个数的不同或参数类型的不同来区分它们 即构造函数的重载。构造函数的功能主要用于在类的对象创建时定义初始化的状态。所以说构造函数的作用,简单来说就是初始化,初始化一个新建的对象。

1.有父才会有子,即便父类什么东西都没有,也必须调父类的构造方法,这样符合现实的生命传承关系,符合 Java 的面向对象和继承的思想
2.如果父类有一些变量,那么调用父类的构造方法,就可以通知 JVM 把父类加载进内存,从而对父类的变量进行初始化赋值
3.如果父类有一些方法,这些方法子类对象是有可能需要用到的,所以这些方法也必须提前放进子类对象中或者方法区中,那就必须把父类加载进内存中,因此调用父类的构造方法就可以通过JVM 加载父类到内存中
三.为什么要用多态?它有什么好处?

当你要修改程序并扩充系统时,你需要修改的地方较少,对其它部分代码的影响较小,千万不要小看这两个"较"字!程序规模越大,其优势就越突出。

标签:初始化,调用,构造方法,子类,整理,父类,心得,构造函数
From: https://www.cnblogs.com/pengsuoqun123/p/16998644.html

相关文章

  • 日常笔记整理
    出现异常String不可以转换为Integerjava.lang.Stringcannotbecasttojava.lang.Integerjava.lang.Stringcannotbecasttojava.lang.Integer解决方案_「已注销」......
  • 整理总结
    EmbedFinally.java运行结果:  finally语句块一定会执行吗?SystemExitAndFinally.javapublicclassSystemExitAndFinally{publicstaticvoidmain(String[]ar......
  • 股市心得
    1,宏观经济,货币政策,股市大势判断2,个股机会,行业整体机会,突发性事件机会,预期事件提前判断提前做好准备。3,估值判断,安全边际4,仓位管理,心态管理空仓为主,大仓位一年抓一两波大机......
  • source insight的使用方法逆天整理
    sourceinsight的使用方法逆天整理A.whySI:为什么要用SourceInsight呢?因为她比完整的IDE要更快啊,比一般的编辑器便捷啊!她有逆天的查看定义,查看调用,查看引用......
  • 开发必备的常用 Vim 操作命令整理
    ​​开发必备的常用Linux命令整理​​​​常用的Linux命令行快捷键整理​​上面两篇文章中,我们学习了​​Linux​​的一些常用命令和命令行中的快捷键。相信大家应该......
  • 常用的 Linux 命令行快捷键整理
    在上一篇中​​开发必备的常用Linux命令整理​​整理了一下​​Linux​​​中的常用命令,并且还在持续补充中,今天准备整理一下​​Linux​​命令行常用的快捷键,还是......
  • ​WEB漏洞渗透测试靶场 资源整理
    整理了一些WEB漏洞本地靶场资源,包括针对性的漏洞专题如SQL注入,XSS等…以及综合类的;1.测试靶场列表2.测试靶场简介 ......
  • java8-时间相关代码整理
    获取昨天起止时刻,就是0点和23点59分59秒LocalDateTime.now().minus(Period.ofDays(1)).with(LocalTime.MIN)LocalDateTime.now().minus(Period.ofDays(1)).with(LocalTi......
  • agda学习笔记——一些基础的整理
    前言:又到了期末寄,开始匆忙整理下半学期学的agda,果然ddl就是第一生产力,这个交互式证明工具还是挺有意思的虽然有的时候很蠢Agda是基于Haskell的,所以很多语法和Haskell几乎......
  • 综合方法selenium整理
    1.1  下载selenium2.0的包官方download包地址:​​http://code.google.com/p/selenium/downloads/list​​官方UserGuide: ​​http://seleniumhq.org/docs/​​官......