天天看點

Java基礎:多态(重載和重寫)

​​

​​ 

(1)域與靜态方法

記住“僅僅有普通方法的調用是多态的”。

而域和靜态方法不是:對于域的訪問。在編譯期間就已經進行解析和綁定了。而假設某個方法是靜态的,就不具備多态性。

(2)編寫構造器有一條準則:

 * 用盡可能簡單的方法使得對象進入正常狀态。盡量避免調用其它方法。

 * 構造器内可以安全調用的方法僅僅有那些final方法(private預設final),由于他們無法被覆寫。

(3)多态概念:

多态是指一個程式中同名的不同方法共存的情況。

這些方法同名的原因是它們的終于功能和目的都同樣,可是因為在完畢同一功能時,可能遇到不同的詳細情況。是以須要定義含不同的詳細内容的方法,來代表多種詳細實作形式。

(4)Java提供兩種多态機制:重載與重寫。

方法的重寫Overriding和重載Overloading是Java多态性的不同表現。

重寫Overriding是父類與子類之間多态性的一種表現

=》假設在子類中定義某方法與其父類有同樣的名稱和參數,我們說該方法被重寫 (Overriding)。子類的對象使用這種方法時,将調用子類中的定義,對它而言,父類中的定義如同被"屏蔽"了。

重載Overloading是一個類中多态性的一種表現。

=》假設在一個類中定義了多個同名的方法,它們或有不同的參數個數或有不同的參數類型,則稱為方法的重載(Overloading)。

Overloaded的方法是能夠改變傳回值的類型(即僅僅有傳回值不同不算重載)。

而即使參數名稱同樣。僅僅要類型不同都是重載,即使他們之間互為繼承關系。

Java基礎:多态(重載和重寫)

繼續閱讀