三大特性:繼承,封裝,多態java
關鍵字extendthis
重寫: 子類能夠根據須要,定義特定於本身的行爲。 也就是說子類可以根據須要實現父類的方法。spa
重載: 在一個類裏面,方法名字相同,而參數不一樣。返回類型能夠相同也能夠不一樣。 通常用於構造器的重載指針
public int getAge(){ return age; } 對象
public void setAge(int age){ this.age = age; } 繼承
1. 抽象類不能被實例化(初學者很容易犯的錯),若是被實例化,就會報錯,編譯沒法經過。只有抽象類的非抽象子類能夠建立對象。接口
2. 抽象類中不必定包含抽象方法,可是有抽象方法的類一定是抽象類。get
3. 抽象類中的抽象方法只是聲明,不包含方法體,就是不給出方法的具體實現也就是方法的具體功能。編譯
4. 構造方法,類方法(用 static 修飾的方法)不能聲明爲抽象方法。class
5. 抽象類的子類必須給出抽象類中的抽象方法的具體實現,除非該子類也是抽象類。
在Java中抽象類表示的是一種繼承關係,一個類只能繼承一個抽象類,而一個類卻能夠實現多個接口。
抽象類中的方法默認爲抽象方法
接口:
一般以interface來聲明。一個類經過繼承接口的方式,從而來繼承接口的抽象方法。
接口並非類,編寫接口的方式和類很類似,可是它們屬於不一樣的概念。接口則包含類要實現的方法。
接口沒法被實例化,可是能夠被實現。一個實現接口的類,必須實現接口內所描述的全部方法,不然就必須聲明爲抽象類。另外,在 Java 中,接口類型可用來聲明一個變量,他們能夠成爲一個空指針,或是被綁定在一個以此接口實現的對象(??)。