本文目錄一覽:
Java函數重載只適用於構造函數嗎?一般的類的方法可以重載嗎?
方法重載是指在一個類中定義多個同名的方法,但要求每個方法具有不同的參數的類型或參數的個數。一般的方法完全可以重載。
同時注意和重寫的區別,重寫就是在子類中把父類本身有的方法重新寫一遍,在方法名,參數列表,返回類型(包括子類中方法的返回值是父類中方法返回值的子類時)都相同的情況下, 對方法體進行修改或重寫。
java函數重載中 父子類的函數名相同 參數不同對嗎?
函數重載(overload)是指多個名稱相同而參數數量或類型不同的函數。要注意它與函數重寫(override)的區別。函數重載和類的繼承無關。
java 重載和重寫的區別
1.定義區別:
①重載是指不同的函數使用相同的函數名,但是函數的參數個數或類型不同。調用的時候根據函數的參數來區別不同的函數。
②覆蓋(也叫重寫)是指在派生類中重新對基類中的虛函數(注意是虛函數)重新實現。即函數名和參數都一樣,只是函數的實現體不一樣。
2.類的關係區別
覆蓋是子類和父類之間的關係,是垂直關係;重載是同一個類中方法之間的關係,是水平關係。
3.產生方法區別
覆蓋只能由一個方法或只能由一對方法產生關係;重載是多個方法之間的關係。
4.參數列表要求區別
覆蓋要求參數列表相同;重載要求參數列表不同。
5.調用方法區別
覆蓋關係中,調用方法體是根據對象的類型來決定;而重載關係是根據調用時的實參表與形參表來選擇方法體的。
擴展資料
方法的重寫:
1、在子類中可以根據需要對從基類中繼承來的方法進行重寫。
2、重寫的方法和被重寫的方法必須具有相同方法名稱、參數列表和返回類型。(註:返回值可以為父類中返回值的子類型.參數若為子類,則不是重寫是重載)
3、重寫方法不能使用比被重寫的方法更嚴格的訪問許可權。
4. 重寫方法不能聲明拋出比被重寫方法範圍更大的異常類型。
總結:重寫是子類對所繼承父類相同方法的一種更改,這個更改需要遵循格式按照父類的格式,訪問許可權,拋出異常等等,都在父類方法控制範圍內,內部具體實現可以實現不同的效果。
原創文章,作者:小藍,如若轉載,請註明出處:https://www.506064.com/zh-tw/n/236639.html