方法重寫概述及其應用 學習筆記
阿新 • • 發佈:2018-06-21
pub 父類靜態 static ID 詳細 string nds CA 主體
class Demo7_Phone {
public static void main(String[] args) {
Ios8 i = new Ios8();
i.siri();
i.call();
}
}
/*
B:方法重寫的應用:
* 當子類需要父類的功能,而功能主體子類有自己特有內容時,可以重寫父類中的方法。這樣,即沿襲了父類的功能,又定義了子類特有的內容。
ios7系統 siri speak English
ios8系統 siri 說中文
*/
class Ios7 {
public void call() {
System.out.println("打電話");
}
public void siri() {
System.out.println("speak English");
}
}
class Ios8 extends Ios7 {
public void siri() {
System.out.println("說中文");
super.siri();
}
}
主方法
class Demo8_繼承 { public static void main(String[] args) { DayOne d = new DayOne(); d.泡妞(); d.print(); } } /* * a:父類中私有方法不能被重寫 * 因為父類私有方法子類根本就無法繼承 * b:子類重寫父類方法時,訪問權限不能更低 * 最好就一致 * c:父類靜態方法,子類也必須通過靜態方法進行重寫 * 其實這個算不上方法重寫,但是現象確實如此,至於為什麽算不上方法重寫,多態中我會講解(靜態只能覆蓋靜態) * 子類重寫父類方法的時候,最好聲明一模一樣。 */ class 繼承 { public void sing() { System.out.println("唱紅歌"); } public void 學習() { System.out.println("學習"); } public static void print() { System.out.println("Fu print"); } } class DayOne extends 繼承 { public void 學習() { System.out.println("學習繼承"); } public static void print() { //靜態只能覆蓋靜態,其實不算重寫,多態時候詳細講解 System.out.println("Zi print"); } }
方法重寫概述及其應用 學習筆記