java的三大特性:封装,继承,多态;
what?(是什么)
继承 :就是子类继承父类的属性和行为;从而拥有父类的属性和行为;
例如:cat和dog都继承于animal类;
继承格式:
class 父类 { }
class 子类 extends 父类 { }
why?(为什么使用)
实际开发中;假设要开发两个类:
Dog: 属性:name ,id; 动作: eat,sleep;
Cat: 属性:name ,id; 动作: eat,sleep;
要是建立两个类的话,基本都是重复代码;但是如果创建一个父类Animal;属性:name, id; 方法: eat,sleep;
这样Dog和Cat直接继承Animal类;中间的重复代码可以不用写;提高代码的复用性;维护性也提高;
注意:java只支持单继承,不支持多继承,但支持多重继承;即extends后面只能写一个类名,但是可以C类继承B类,B类又继承A类;
继承特性:
-
子类拥有父类非 private 的属性、方法。
-
子类可以拥有自己的属性和方法,即子类可以对父类进行扩展。
-
子类可以用自己的方式实现父类的方法。
-
Java 的继承是单继承,但是可以多重继承
缺点:提高了类之间的耦合性(继承的缺点,耦合度高就会造成代码之间的联系越紧密,代码独立性越差)
继承关键字:(extends,implements) 所有的类默认继承Object类;
extends : 上面有;
implements:相当于变相的支持了多继承的特性;implements后面加的是接口名;可以同时实现多个接口;接口间用逗号隔开;
super与this关键字:
super : 指向引用当前对象的父类;
this : 指向当前对象;
final关键字:
修饰类时,该类为最终类,不能被继承;
修饰方法时,该方法不能被重写;
修饰属性时,该属性为常量;一旦赋值就不能被修改;