實現多型
向上轉型 (自動型別轉換)
pet dog=new dog();
只能父類允許被訪問的方法和屬性,子類重寫了父類的方法
向下轉型 (強制型別轉換)
pet dog=new dog();
dog d=(dog)dog;
不安全,結合instanceof
介面的特點
1.介面中只能有抽象方法,並且具有預設的訪問修飾符 public , abstract,可以不寫
如果寫必須按照該修飾符
2.介面中只能定義常量,並且具有預設修飾符,
public static final ,可以不寫,如果寫必須按照該修飾符
3.介面不允許被例項化
4.介面可以實現多個,必須重寫所有介面中的抽象方法
介面和抽象類的區別
1.方法
介面中只能有抽象方法,而抽象類中可以有抽象方法和非抽象方法
2.變數
抽象類中可以定義普通變數,常量,而介面只能定義常量並且具有預設的修飾符
3.本身
介面和抽象類都不允許被例項化。
4.介面可以實現多個,抽象類只能繼承乙個
5.關注點不同
抽象類關注的是類和類之間的關係 is a
介面關注的是能力(功能) has a
介面比抽象類更具有**的擴充套件性,因為介面強制實現多型
關鍵字 定義介面:inte***ce
實現介面:implements
多型和介面 C
一 多型 1.是什麼 多型就是物件可以表現對各型別的能力。2.有什麼 子類和父類的關係 子類和父類方法名相同解決方案 一 在子類方法修飾符後面加new 二 在父類的方法修飾符後面加上virtual 在子類中重寫父類的方法,加上乙個override.呼叫父類的方法,但是把父類的方法進行了重寫,更換了裡...
Java 介面和多型
介面 乙個比抽象類還抽象的類,介面中所有的方法都是抽象方法 介面的成員特點 1.只能有抽象方法 2.只能有常量 沒有乙個方法體,無法對變數進行初始化 3.預設使用public和abstract修飾方法 4.只能使用public和abstract修飾方法 5.預設使用public,static,fin...
Java核心 介面 繼承和多型 多型
利用多型可以使程式具有良好的擴充套件性,並可以對所有類物件進行通用的處理。eg 定義乙個平行四邊形的類 parallelogram 在類中頂乙個 draw 方法。public class parallelogram 如果需要頂乙個繪製正方形的方法,通過定義乙個正方形類來處理正方形物件,會出現 冗餘的...