--- title: Java SE笔记: 类的继承和方法的覆盖 date: 2016-08-07 21:20:00 updated: 2016-08-07 21:20:00 description: "类的继承和方法的覆盖" categories: [个人笔记] tags: [Java, Java SE笔记] --- ### 关于继承 引入类继承最基本的作用是:代码重用。 语法: ``` [修饰符列表] class 子类名 extends 父类名{ 类体; } ``` - 父类,超类,基类,superclass - 子类,派生类,subclass - 没有显示继承其他类,默认继承SUN提供的java.lang.Object;java语言中, - 类和类之间只支持单继承。 - `java语言中子类继承父类,会将父类中所有的数据全部继承,包括私有的也能继承过来。` - `但是在子类中无法直接访问父类中的私有的数据。但是可以间接访问.` - 注意:构造方法无法被子类继承。 ### 关于方法的覆盖 方法覆盖,方法的重写,Overwrite,Override 1. 什么时候方法要进行重写?的 如果父类中的方法已经无法满足当前子类的业务需求,需要将父类中的方法进行重新写一遍。 2. 子类如果重写父类中的方法之后,子类对象一定调用的是重写之后的方法。 3. 发生方法覆盖的条件: - `发生在具有继承关系的两个类之间` - `必须具有相同的方法名,相同的返回值类型,相同的参数列表.` - `重写的方法不能比被重写的方法拥有更小的访问权限。` - `子类方法不能抛出比父类方法更多的异常,但可以抛出父类方法异常的子异常` - `私有的方法不能被覆盖。(多态之后讲)` - `构造方法无法被覆盖。因为构造方法无法被继承。` - `静态的方法不存在覆盖。(多态之后讲) 静态方法不存在覆盖,因为静态方法执行和对象无关。` - `覆盖指的是成员方法,和成员变量无关。` 4. 继承最基本的作用:代码重用。 继承最重要的作用:方法可以重写。