淺談java整合中的final方法重寫和過載問題
阿新 • • 發佈:2019-02-17
Question 1:
子類是否可以重寫父類的final方法,答案是:不可以!
父類Person:
子類SubPerson:
Question 2:
子類是否可以過載父類的final方法,答案是可以的!
父類Add
子類 SubAdd:
Question 3:
過載方法中 int ,char 如何自動適配過載函式的!
Number 1:輸出結果毫無懸疑: public final char add(char x, char y)
Number 2:
輸出結果: public final int add(int x, int y), char 會轉成int型別然後呼叫int的過載形式。
Number 3:
輸出結果: public final float add(float x, float y) int過載被註釋掉之後會轉成float型別呼叫float過載形式。
Number 4:
輸出結果: public final float add(float x, float y) ,因為float型別比int型別精度高,所以呼叫float形式的過載。
Number 5:
輸出結果: public final float add(double x, double y) ,float找不到float的過載形式,向精度較高的double形式呼叫。
Number 5:
輸出結果: public final float add(float x, float y) 有點困惑,為什麼long型別呼叫了float的過載形式呢?!