Java_basic_8: 继承

继承

继承的特点

  • 子类,父类
  • 单继承(一个子类只有一个父类)
  • 父类中private 的属性不能被继承

继承的好处

  • 子类拥有父类的所有属性和方法
  • 实现代码的复用

继承的语法

  • class 子类 extends 父类{}
  • 关键字 extends
class Dog extends Animal{
//

}

继承的初始化顺序

  • 初始化superclass 再 初始化subclass
  • 先初始化对象中的属性,再执行构造方法中的初始化
  • e.g. 当我们创建一个子类对象时,这其中的初始化顺序是:
    父类对象初始化——> 父类属性初始化——> 父类构造方法执行——>子类对象初始化——>子类属性初始化——>子类构造方法执行

final 关键字

  • final 关键字可以修饰 类、 方法、属性和变量
  • final 修饰 class, 则该类不能被继承
  • final 修饰 method, 则该方法不能被覆盖(重写)override
  • final 修饰 parameters, 则该类的属性不会进行隐式的初始化(及该属性的初始化必须有值)或者在构造方法中赋值(两种只能选其一)
  • final 修饰变量,则该变量只能被赋值一次,即成为一个常量

super 关键字

  • super 关键字常用在对象内部,可以用来代表父类对象
  • 访问父类的属性 e.g. super.age
  • 访问父类的方法 e.g. super.eat()
  • super 的应用
    -- 子类的构造过程中必须调用父类的构造方法
    -- 如果子类的constructor中没有显式的调用父类的构造方法,则系统默认调用父类的无参构造方法
    -- 如果显示的调用构造方法,则调用语句必须放在子类构造方法的第一行
    -- 如果子类的构造方法中既没有显示的调用父类构造方法,而父类中也没有无参构造方法,则会编译出错

Object 类

  • Object 类是所有类的父类,如果一个类没有用extends明确标识继承于哪个类,则它默认继承Object类
  • Object 类中的方法适用于所有子类

Object类中的几个重要方法

toString() 方法

  • Object 类中的toString方法: 返回对象的哈希code码(对象的地址字符串)
  • 可以重写toString() 方法表示出对象的属性
    code->generate

equals() 方法

  • 返回值是boolean型 true or false, 所以一般可以和if语句配合
  • 比较的是对象的引用地址是否相同(是否指向同一块内存地址)
  • 如果要比较两个对象的值是否相等,则可以重写
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 1. Java基础部分 基础部分的顺序:基本语法,类相关的语法,内部类的语法,继承相关的语法,异常的语法,线程的语...
    子非鱼_t_阅读 31,778评论 18 399
  • 一:java概述:1,JDK:Java Development Kit,java的开发和运行环境,java的开发工...
    ZaneInTheSun阅读 2,690评论 0 11
  • 1.import static是Java 5增加的功能,就是将Import类中的静态方法,可以作为本类的静态方法来...
    XLsn0w阅读 1,267评论 0 2
  • 面向对象主要针对面向过程。 面向过程的基本单元是函数。 什么是对象:EVERYTHING IS OBJECT(万物...
    sinpi阅读 1,096评论 0 4
  • 近期,西安警方破获了3起拐卖儿童案,其中一个孩子与家人失散了28年,漫漫寻亲路这家人经历的辛酸,常人无法体会。那面...
    8a6cf3272fd9阅读 203评论 0 0