方法覆蓋:
區分方法覆蓋(重寫)和方法過載: 例如
class person
}class student extends person
public void study()
}class teacher extends person
}class testdemo
}}
由上可以看出:如果不強制轉換成子類,那就只能呼叫父類中定義的方法,如果這個方法被子類覆蓋了,那就執行子類中的方法,如果沒有,那就呼叫父類中的方法。
如果強制轉換了,那就可以呼叫子類中特有的一些方法,如上面的student的study方法。
靜態多型和動態多型:
動態多型:
抽象類 abstract
介面 inte***ce
實現介面時,如果不實現所有的抽象方法,那就要把這個類定義為抽象類。
類實現介面用implements關鍵字後面加 介面名1,介面名2,介面名3.
定義:
inte***ce usb
inte***ce usb2 extends usb
abstract class keyboard1 implements usb2
}class mouse implements usb2
public void test2()
}
抽象類和介面的區別
物件導向 多型
繼承是多型的基礎,是指物件的多種形態 1.引用的多型 1 父類的引用可以指向本類的物件 2 父類的引用可以指向子類的物件 注意 子類的引用不能指向父類的物件 2.方法的多型 1 建立本類物件時,呼叫的方法是本類的方法 2 建立子類物件時,呼叫的方法是子類重寫的方法或是繼承的方法 注意 如果是子類獨有...
物件導向 多型
多型可以簡單的概括為 乙個介面,多種方法 在程式執行過程中才決定呼叫的函式,簡單的說就是,允許將子類型別的指標賦值給父類型別的指標,賦值後,父類物件就可以根據當前賦給它的子類物件的特徵以不同的方式執行。容易混淆的兩個概念 是指允許存在多個同名的函式,而這些函式的參數列不同 或許引數個數不同,或許引數...
物件導向 多型
多型 可以理解為事物存在的多種體現形態。人 男人,女人 動物 貓,狗。貓 x new 貓 動物 x new 貓 1,多型的體現 父類的引用指向了自己的子類物件。父類的引用也可以接收自己的子類物件。2,多型的前提 必須是類與類之間有關係。要麼繼承,要麼實現。通常還有乙個前提 存在覆蓋。3,多型的好處 ...