JAVA基础知识点梳理八:继承

来源:互联网 发布:湖广填四川知乎 编辑:程序博客网 时间:2024/05/19 13:07

继承

1,继承的概念:

继承是类与类的一种关系,是一种“is a”的关系,例如:动物和狗,动物是狗的父类或基类,狗是动物的子类或派生类。

注:Java中的继承是单继承的,一个类只有一个父类。

2,继承的好处:

子类拥有父类的所有属性和方法,但是Private修饰的无效。

实现代码复用

3,语法规则:

class 子类 extends 父类例如:class Dog extends Animal {    //.......   }

方法的重写

1,什么是方法的重写

如果子类对继承父类的方法不满意,是可以重写父类继承的方法的,当调用方法时会优先调用子类的方法。

2,语法规则

返回值类型,方法名,参数类型以及个数都要与父类继承的方法相同,才叫方法的重写。

继承初始化顺序

1,初始化父类再初始化子类

2,先执行初始化对象中属性,再执行构造方法中的初始化

总结:父类对象–>属性初始化–>构造方法–>子类对象–>属性初始化–>构造方法

final的使用

final关键字

使用final关键字做标识有“最终的”含义

final可以修饰类、方法、属性和变量

final修饰类,则该类不允许被继承

final修饰方法,则该方法不允许被覆盖(重写)

final修饰属性,则该类属性不会进行隐式初始化(类的初始化必属性必须有值)或在构造方法中赋值(但只能选其一)

final修饰变量,则该变量只能赋一次值,即为常量

super的使用

super关键字:

在对象的内部使用,可以代表父类对象。

访问父类的属性super.age访问父类的方法super.eat()

子类的构造的过程当中必须调用其父类的构造方法

如果子类的构造方法中没有显式调用父类的构造方法,则系统默认调用父类无参的构造方法

如果显示的调用构造方法,必须在子类的构造方法的第一行

如果子类构造方法中既没有显式调用父类的构造方法,而父类又没有无参的构造方法,则编译出错

Object类

Object类是所有类的父类,如果一个类没有使用extends关键字明确标识继承另外一个类,那么这个类默认继承Object类。

Object类中的方法,适合于所有子类。

1.toString()方法在Object类里面定义toString()方法的时候返回的对象的哈希code码(对象地址字符串),如果在代码里面直接输出了一个对象,你会发现输出的是一个对象的地址,我们把他称为哈希码(通过哈希算法生成的字符串,用来唯一区分对象)可以直接通过toString()方法表示出对象的属性点击Source-->Generate toString()自动完成书写
2.equals()方法比较的是对象的引用是否是指向同一块内存地址点击Source-->Generate hasCode() and equals()自动完成书写
0 0
原创粉丝点击