繼承是面向對象的三大特性之一,是繼封裝後我們接觸的又一個特性,繼承關係發生在兩個類之間,在Java中是單繼承,指在一個類只能有一個直接父類,但是可以多重繼承,實現繼承的類叫做子類,被繼承的類稱之爲父類(超類、基類),實現繼承的關鍵字是extends,如果一個類沒有顯示的繼承類,則隱式的繼承了java.lang.Object類,繼承實現的是is的關係。
Java的繼承的實現語法:
class SubClass extends SuperClass{
//類體
}
extends在英文裏是“擴展”的意思,其實我們說的繼承就是一種擴展,下面的代碼體現了繼承的特點:
class Person{
String name;
public void init(){
System.out.println("My name is "+name);
}
}
class Zhangsan extends Person{}
public class Test04 {
public static void main(String[] args) {
Zhangsan zs = new Zhangsan();
zs.name = "張三";
zs.init();//My name is 張三
}
}
由上面的代碼可以看出,Zhangsan類是一個空的類,但是,我們卻調用了他的name屬性和innit()方法,而這個屬性和方法是Zhangsan類繼承的父類Person類的。
只要是父類中使用public default protected修飾的方法和屬性子類都可以繼承使用的。