Java中的基礎----面向物件的三大特性
JAVA是一個純面向物件的語言。
面向物件的三大基本特性:繼承、封裝、多型。
1)繼承。明確表述共性,以便於重用,由父類派生出子類,繼承方法和例項變數,以此增加新的方法,以滿足特殊需求。
你可以理解為:唐老鴨(子類)是鴨子(父類)。唐老鴨(子類)繼承了鴨子(父類)的特性,子類擁有鴨子(父類)的基本技能
游泳(方法、例項變數)。同時,唐老鴨還有自己獨有技能:開船(新增的方法)。
2)封裝。把過程和資料包裝起來。
你可以理解為:游泳這項技能,鴨子們天生具有,所以觀眾不必關心鴨子是怎麼遊。我們把鴨子游泳的過程和資料包裝起來,使用者直接呼叫即可。
3)多型。允許不同類的物件對同一訊息做出響應。
你可以理解為:唐老鴨和醜小鴨都是鴨(多型),所以它們兩都能游泳(對同一訊息作出響應)。
另外Java還有一大特徵:抽象,即提煉目標的某個特徵。可以理解為:鴨子的嘴是扁的(抽象)。
下面簡單的例子:
interface 鴨子的行為{//定義介面
void 飛();
void 游泳();
void 呱呱叫(String voice);
}
class 鴨子 implement 鴨子的行為{ //實現介面的類
public 鴨子(){//類的構造方法
//構造器......
}
public void 飛(){
//實現介面的方法
}
public void 游泳(){
}
public void 呱呱叫(String voice){
this.voice=voice;
}
public static void main(String args[]){//入口函式
鴨子 duck =new 鴨子();
duck.飛();
duck.游泳();
duck.呱呱叫();
}
}
public class 唐老鴨 extends 鴨子{ //子類繼承父類,(封裝/繼承/多型)
private String 開船;//定義私有成員
public 唐老鴨(String 開船){
this.開船=開船;//類成員初始化
}
public String 開船(){
return 開船;
}
}