zl程序教程

您现在的位置是:首页 >  后端

当前栏目

(十三)java类的继承

JAVA继承 十三
2023-09-14 08:57:15 时间
    子类是一种特殊的父类,因此可以看作父类是大类,子类是小类。
    extends实际上是拓展的意思,而父类和子类的关系实际上用拓展来解释似乎更加的恰当,子类在父类功能的基础上增加新的功能。
    在继承中,除开父类的构造器以外,子类几乎可以继承父类所有的功能和属性。
    每个类最多只能有一个直接的父类,可以有无限多个间接父类,就像人一样,只能有一个亲生父亲。
    若一个类定义的时候没有显示定义直接父类,则默认继承java.lang.Object,他是所有类的父类,因此所有的java对象都可以调用java.lang.Object的实例方法。
    父类引用可以指向子类对象,即声明一个父类型的变量可以实例化为子类的对象,这也是java多态性的一个重要的实现方式。除此之外,方法的重载也是多态性的实现方式之一。
    需要注意的是,重写方法和被重写的方法必须同时都是类方法或者同时都不是类方法。
    继承中还有一个很重要的概念是重写,对于子类重写过的方法,使用时究竟使用重写前的版本还是重写后的版本,取决于对象的类型而不是引用的类型。
    重写的时候,子类方法会覆盖父类的方法,父类private方法不可被重写。
    有的时候,当子类定义了与父类同名的属性时,也会覆盖父类的属性。正常情况下,子类定义的方法、子类属性直接访问该属性时,都会默认访问覆盖后的方法和属性而无法访问到被覆盖的方法和属性。但是在子类定义的实例方法中可以通过super来访问父类被覆盖的方法和属性。
    如果子类中没有和父类同名的属性,那么访问的时候不需要用super,可以直接访问。和this一样,super也不能出现static方法中。
    继承的时候不继承父类的构造器,如果在子类中一定要用的话,也可以通过super来调用。而即使不显示的调用父类构造器,系统也会默认在子类构造器执行体的第一行调用父类构造器一次,只不过是调用父类的无参构造器。
    super调用和this调用不会同时出现。
    子类构造器调用父类构造器有几种情况:
    1.super显示调用,系统会根据super里的实参列表选择调用父类的哪个构造器。
    2.子类构造器执行体的第一行用了this调用本类重载的构造器,那么在执行调用的构造器的第一行会调用父类的构造器。
    3.子类中既没有this调用也没有super调用,系统会默认在子类构造器执行体的第一行调用父类的无参构造。
    创建任何对象总是从该类继承树的最顶层构造开始执行,然后依次向下,最后才是本类。
Java初学者:技术文章(类的继承) Java是面向对象编程的语言,面向对象的主要目的之一是提供可重用的代码。设想当我们开发一个非常庞大的项目时,重用已有的代码比重新编写要好得多,而且还可以节省时间,避免在程序中引入新的错误所以使用继承可以提高代码的重用性与程序的扩展性。
Java复习3-类的继承 本次学习面向对象设计的另外一个基本概念:继承(inheritance)。这是Java程序设计中的一项核心技术。另外,还要学习反射(reflection)的概念。 类、超类、子类 public class Manager extends Employee{ //... 关键字extends表明正在构造的新类派生于一个已存在的类。
【JAVA零基础入门系列】Day13 Java类的继承与多态 【JAVA零基础入门系列】(已完结)导航目录 Day1 开发环境搭建 Day2 Java集成开发环境IDEA Day3 Java基本数据类型 Day4 变量与常量 Day5 Java中的运算符 Day6 Java字符串 Day7 Java输入与输出 Day8 Java的控制流程 Day9 Ja...
涂宗勋 认真生活,快乐工作,保持理想!https://blog.csdn.net/tuzongxun