java個人學習筆記12(多型)

2021-06-20 23:46:30 字數 1598 閱讀 1073

1.多型

物件多型性在程式中的體現:父類的引用或者介面的引用指向了子類的物件。

多型的好處:提高了**的擴充套件性

多型的弊端:不能使用子類的特有方法

多型的前提:必須有繼承或實現的關係,通常有覆蓋

instanceof:物件型別判斷,格式:物件 instanceof 型別,返回true或false

abstract void up();

} public void up()

public void cold()

} public void up()

public void light()

}class duotaidemo//判斷,防止型別轉換出錯

air_condition a1 = (air_condition) a;//向下轉型

a1.cold();

} a.up();

不行,不能使用子類特有的方法 }}

2.練習

/**

筆記本擴充套件usb介面功能

*/abstract inte***ce usb//定義乙個usb介面功能

class notebook

public void useusb(usb usb)

}//定義乙個使用usb裝置的方法

}//定義乙個筆記本類

class mouse

public void setcolor(string color)

}//定義了乙個滑鼠類

class mousebyusb extends mouse implements usb

public void close()

}//定義了乙個實現usb介面的滑鼠類

class keyboard

public void setcolor(string color)

}//定義了乙個鍵盤類

class keyboardbyusb extends keyboard implements usb

public void close()

}//定義了乙個實現usb介面的鍵盤類

3.多型中成員變數和成員函式的呼叫

1)當子父類出現同名的成員變數時,多型呼叫只看該成員變數的引用所屬的類中的成員變數

即:father a = new son();a.num是指父類中的成員變數num

2)當子父類出現一模一樣的成員函式時,多型呼叫,編譯時看引用變數所屬的類中的方法(與上同);執行時看物件所屬的類中的方法

即:father a = new son();a.show()編譯時看父類中的show(),執行時看子類物件的show()

3)當子父類出現一模一樣的靜態函式時,多型呼叫,編譯和執行都看引用變數所屬類中的方法,真正呼叫靜態方法不需要物件,直接通過類名呼叫

靜態方法繫結到類上,成員方法動態繫結到當前物件上

java基礎 個人學習筆記 B

7.一,如何拿到char型別的資料 字串.charat index 下標0開始 string s 我是中國人 char c s.charat 2 二,迴圈 1.求偶數的和 2.每行輸出5個 1.初始化條件 執行一次並且不能省略 2.迴圈條件 while do while 是否可以省略 boolean...

java基礎 個人學習筆記 C

12.class valuetest1 intnum 10 for strings student system.out.println 方法呼叫前 t student 0 范冰冰 changevalue student system.out.println 方法呼叫後 t student 0 周杰...

個人學習 java 列舉

一種單例模式 裡面只有乙個類 他類裡的屬性宣告為 private final 在構造器中初始化 它值一旦確定就不能修改 private season string seasonname,string seasondesc this.seasonname seasonname this.seasond...