方法過載 VS 方法重寫

2021-10-05 13:22:29 字數 595 閱讀 3745

方法的過載:

1.定義:在同乙個類中,允許存在乙個以上的同名方法,只要他們的引數個數或者引數型別不同即可。

「兩同一不同」:同乙個類、相同方法名

引數列表不同:引數個數不同,引數型別不同

判斷是否是過載:

跟方法的許可權修飾符、返回值型別、形參變數名、方法體都沒有關係

方法重寫:

1.重寫:子類繼承父類之後,可以對父類中同名同引數的方法,進行覆蓋操作。

2.重寫的規定:

(1)子類重寫的方法的方法名和行參列表與父類被重寫的方法的方法名和行參列表相同

(2)子類重寫的方法的許可權修飾符不小於父類被重寫的方法的許可權修飾符

特殊情況:子類不能重寫父類中宣告為private許可權的方法

(3)返回值型別:

父類被重寫的方法的返回值型別是void,則子類重寫的方法的返回值型別只能是void。

父類被重寫的方法的返回值型別是a型別(引用型別),則子類重寫的方法的返回值型別可以是a類或a類的子類

父類被重寫的方法的返回值型別是基本資料型別,則子類重寫的方法的返回值型別必須是相同的資料型別

(4)子類重寫的方法丟擲的異常型別不大於父類被重寫的方法丟擲的異常型別

方法過載,方法重寫

方法過載 前提 必須在同一類中!才能過載 特點 這幾個方法要在乙個類中 這幾個方法名字要一樣 這幾個方法引數項不同 引數型別不同 主要就是 引數列表不能相同 順序可以不同 方法的重寫 前提是繼承關係 訪問修飾符要比繼承之前的大,返回值型別相同,方法名相同,引數列表相同,但方法體不同,稱為方法的重寫 ...

方法過載 方法重寫

同乙個類中,方法名一致,但引數 數量 型別 順序 不一樣。數量 public a 與public a int a 型別 public a int a 與public a string a 順序 public a string a,int a 與public a int a,string a 子類繼承...

方法過載 方法重寫

1 方法過載 protected void fun int a protected void fun int a,int b protected void fun long a private void fun int a,long b private void fun long b,int a p...