一、方法的過載
1.概念(overloading):方法名稱相同,但是引數列表不同(即的型別和個數都不同),通過傳遞引數的不同來完成不同的功能
2.例子:
class number
public void tell(int a) }
public class overloading
}
輸出結果為4 1
二、方法的重寫
1.概念:重寫是指子類定義了和父類同名的方法,方法名稱相同,返回值相同,引數也相同
2.例子:
class a
}class b extends a
}public class overriding
}
輸出結果:
我被重寫了
a的方法
3.限制:子類重寫的方法不能比父類更加嚴格的訪問許可權
比如父類有乙個public void tell() 方法,但是子類重寫父類方法時,重寫成private void tell() 那麼這樣是不行的
4.訪問許可權:private(作用域:類) < default(作用域:類、包) < piublic(整個工程)
三、總結
過載:1.overloading
2.名稱相同,引數型別或個數不同
3.對許可權無要求
4.發生在乙個類中
重寫:1.overriding
2.名稱、引數型別、引數個數完全相同
3.重寫的方法不能擁有比父類更嚴格的許可權
4.發生在繼承當中
java方法過載和方法重寫的區別
方法過載,發生在同乙個類中,方法名相同,引數列表相同與返回值無關加粗樣式 方法重寫,發生在子父類中,方法名相同,引數列表相同,返回值相同,子類訪問修飾符要大於等於父類訪問修飾符 子類異常不能大於父類異常,父類方法若使用private static final任意修飾符,就不能被子類繼承 注意 不能以...
方法過載和重寫的區別,方法過載重寫區別
答一 根本區別 重寫 重構 很直觀啊,子類覆蓋了父類的同名同參同返回值的方法,用子類呼叫的只會是重寫的方法 過載,同名而已。答二 1 過載 方法名相同,引數列表不同 2 重寫 也叫覆蓋,指在子類中定義乙個與父類中方法同名同引數列表的方法。因為子類會繼承父類的方法,而重寫就是將從父類繼承過來的方法重新...
Java中方法過載和重寫的區別
public class demo public void test1 public string test1 string name public void test1 string name,int age public void test1 int age,string name 注意 方法的...