我先給出一段**,你可以測試一下輸出的結果是什麼,和你想的是不是一樣,如果是一樣的,或許我寫的東西不會給你帶來任何幫助,若不是,到可以看看,我們可以共同**……
class friut
string getfs()
}string getfs()
static string getfc()
public static void main(string arg)
}我給出這段**的輸出結果:yellowbig
疑問來自這裡
system.out.print(f.getfc());
為什麼它呼叫的事父類中的方法
system.out.print(f.getfs());
為什麼他呼叫的是子類中的方法
他是用父類宣告,子類來例項化,這是類的強制轉化的一種。
我們可以先想一想靜態變數和方法與普通變數和方法的區別,可知,靜態的是屬於類的,在類宣告的時候即存在,普通的是屬於物件的,需要例項化物件。
f.getfc()就是呼叫父類中的靜態的方法,
f.getfs()就是呼叫子類中的普通方法,
當然,如果你用的是eclipse你可以在子類的
string getfc()
方法前加@override你會看到什麼, 如果你沒有試,我就告訴你吧,會說此方法必須覆蓋超類中的方法,所以你也可以理解為,靜態方法是不可以重寫的,當然,你也可以執行,但是你就要清楚的知道,它是呼叫父類,還是子類中的方法了。……
在繼承中重寫方法時丟擲異常的問題
父類有方法fun 子類重寫了該方法。父類的方法需要丟擲異常,子類的方法是否要同樣丟擲異常?丟擲同樣的異常?能否丟擲父類沒有的異常?還是一定要丟擲父類所丟擲異常範圍內的異常?記住兩句話 1.子類重寫父類方法要丟擲與父類一致的異常,或者不丟擲異常 2.子類重寫父類方法所丟擲的異常不能超過父類的範疇 下面...
在繼承中重寫方法時丟擲異常的問題
在繼承中重寫方法時丟擲異常的問題 父類有方法fun 子類重寫了該方法。父類的方法需要丟擲異常,子類的方法是否要同樣丟擲異常?丟擲同樣的異常?能否丟擲父類沒有的異常?還是一定要丟擲父類所丟擲異常範圍內的異常?記住兩句話 1,子類重寫父類方法要丟擲與父類一致的異常,或者不丟擲異常 2,子類重寫父類方法所...
繼承,方法的重寫
1 子類繼承父類的哪些東西?1.繼承public和protected修飾的屬性和方法,不管子類和父類是否在同乙個包裡。2.繼承預設許可權修飾符修飾的屬性和方法,但子類和父類必須在同乙個包裡。3.子類不能繼承父類中的私有屬性和方法。4.子類不能繼承父類的構造方法,子類能夠呼叫父類的構造方法。2 sup...