多態(tài)的概述
1.多態(tài)是繼封裝牌里、繼承之后颊咬,面向?qū)ο蟮牡谌筇匦浴?br>
例如:
現(xiàn)實事物經(jīng)常會體現(xiàn)出多種形態(tài),如學(xué)生牡辽,學(xué)生是人的一種喳篇,則一個具體的同學(xué)張三既是學(xué)生也是人,即出現(xiàn)兩種形態(tài)态辛。
2.多態(tài)的定義格式:就是父類的引用變量指向子類對象
父類類型 變量名 = new 子類類型();
變量名.方法名();
A:普通類多態(tài)定義的格式
父類 變量名 = new 子類();
如:
class Fu {}
class Zi extends Fu {}
//類的多態(tài)使用
Fu f = new Zi();
B:抽象類多態(tài)定義的格式
抽象類 變量名 = new 抽象類子類();
如:
abstract class Fu {
public abstract void method();
}
class Zi extends Fu {
public void method(){
System.out.println(“重寫父類抽象方法”);
}
}
//類的多態(tài)使用
Fu fu= new Zi();
C:接口多態(tài)定義的格式
接口 變量名 = new 接口實現(xiàn)類();
如:
interface Fu {
public abstract void method();
}
class Zi implements Fu {
public void method(){
System.out.println(“重寫接口抽象方法”);
}
}
//接口的多態(tài)使用
Fu fu = new Zi();
多態(tài)成員特點
1.成員變量 編譯時(看是否報錯)看的是左邊麸澜,運行時看的左邊(看運行結(jié)果)
2.成員方法 編譯時看的是左邊,運行時看右邊
3.靜態(tài)方法 編譯時看的是左邊奏黑,運行時看的也是左邊