extends继承 super final
1、类是对象共性的体现,那么继承就是类的共性的体现。把多个类相同的地方提取出来当父类,让用得到父类中的方法的类继承父类。
2、特点:
一、提高代码的复用性
二、子类可以使用父类中的内容
三、子类可以根据需求添加父类没有的内容
四、私有内容不会被继承
3、java中的继承是单继承。一个子类只能有一个父类,一个父类可以有多个字类
缺点:不方便后期维护,后期添加新功能 在子类中修改 最好不要动父类
优点:使用简单
4、重写 override
重写只出现在继承中,原理和方法的重载相似但是满足的条件不同
名称/条件 | 1 | 2 | 3 |
---|---|---|---|
方法的重写 | 不同的类 | 继承|实现中使用 | 方法的签名不同(参数列表) |
方法的重载 | 同一个类 | 多个方法名相同 | 方法的签名不同(参数列表) |
检验是否重写成功:
重写成功成功左侧会有一个绿的向上的箭头。
在重写的方法上面加@override
如果方法没报错那么 重写成功。这是一个强制检验的方法
需要注意的是:
无法重写被private、fianl、statici修饰的方法不能被重写
子类重写父类方法中返回值的类型如果是数据类型,父子必须保持相等,引用类型子类大于父类,权限修饰符子类大于父类。(了解即可)大部分重写时 子类和父类会保持一致
5、Super
super
和this
的作用一样,适用的范围不同而已。super
用于子类和父类之间。
一、用来区分父子类之间同名变量
二、调用父类中的方构造法(区分子类重写后的构造方法,使用super可以指向父类的构造方法)
由于子类是继承父类的 所以字类创建对象时会自动调用父类空构造器super()
三、super和this
都是要写在首行,所以俩个不能同时在一个方法中显示存在,由于super会默认调用空构造所以可以省略。可以写this
然后super
默认调用
6、Final 修饰的方法表示此方法已经是“最后的、最终的”含义
一、被final修饰的变量为常量 不可修改
二、被final修饰的方法不可被重写
三、被final修饰的类不能被继承