Java基礎 方法的過載和覆蓋

2021-07-07 10:06:40 字數 562 閱讀 2256

override可以翻譯為覆蓋,有時也叫重寫,從字面就可以知道,它是覆蓋了乙個方法並且對其重寫,以求達到不同的作用。對我們來說最熟悉的覆蓋就是對介面方法的實現。
overload( & overloading)對我們來說可能比較熟悉,可以翻譯為過載,它是指我們可以定義一些名稱相同的方法,通過定義不同的輸入引數來區分這些方法,然後再呼叫時,vm就會根據不同的引數樣式,來選擇合適的方法執行。

過載與覆蓋的區別 

1、方法的覆蓋是子類和父類之間的關係,是垂直關係;方法的過載是同乙個類中方法之間的關係,是水平關係。

2、覆蓋只能由乙個方法,或只能由一對方法產生關係;方法的過載是多個方法之間的關係。

3、覆蓋要求引數列表相同;過載要求引數列表不同。

4、覆蓋關係中,呼叫那個方法體,是根據物件的型別(物件對應儲存空間型別)來決定;過載關係,是根據呼叫時的實參表與形參表來選擇方法體的。

附加:

>>方法的這種多型個性,在類的繼承上也有多型的展示

Java基礎之方法的過載和覆蓋

對同乙個類中的多個方法 包括從父類中繼承的方法 如果有兩個方法的方法名相同,但引數列表不同,那麼可以說,乙個方法是另乙個方法的過載方法。這種現象叫過載。方法過載特點與返回值型別無關,只看方法名和引數列表 在呼叫時,虛擬機器通過引數列表的不同來區分同名方法 過載必須滿足以下條件 1 方法名稱相同。2 ...

java 方法覆蓋 方法過載和多型

1 方法覆蓋 override 即方法重寫,對父類的方法進行重寫,要求子類和父類的方法名和入參個數和型別必須一致。public class parent public class children extends parent 2 方法過載 overload 乙個類中可以存在多個重名的方法,但是要求...

Java中的方法過載和重寫(覆蓋)

一.方法過載 overload 方法過載的判定 同一類中,方法名相同,引數列表不同 引數個數不同,引數列表中對應位置引數型別不同 其他方法返回值 和訪問修飾符都隨意。public class overloadtest the first situation the number of param t...