java方法重载实事例_零基础java入门教程函数重载function实例化格式案例
java函數(shù)的重載,說白了就是函數(shù)塊函數(shù)名一樣,但函數(shù)類型和參數(shù)類型和參數(shù)列表個(gè)數(shù)不同
重載之和參數(shù)列表有關(guān)系,與返回值無關(guān)
java函數(shù)重載
函數(shù)重載鋪墊如下圖
函數(shù)重載鋪墊
上圖功能顯示,功能一致所以功能一致所以用的功能函數(shù)名一致,都改用add函數(shù)
當(dāng)出現(xiàn)函數(shù)塊中函數(shù)名稱一致時(shí),如何區(qū)分去執(zhí)行代碼塊,則通過函數(shù)定義的形參個(gè)數(shù)來確定,如下圖
函數(shù)重載入門案例啟發(fā)
由上例題可以清晰的明白如果參數(shù)列表個(gè)數(shù)與定義過的函數(shù)形參列表個(gè)數(shù)不一致時(shí),則會(huì)編譯失敗,系統(tǒng)會(huì)提示你沒有定義過,如下圖代碼與編譯結(jié)果
參數(shù)列表個(gè)數(shù)不一致時(shí)編譯失敗無法重載
從上面三個(gè)案例可以明確的知道重載的形象表現(xiàn),即函數(shù)塊名稱一致,形參列表個(gè)數(shù)不同,對應(yīng)匹配執(zhí)行。如調(diào)用的形參列表與定義的函數(shù)塊形參列表不一致時(shí)則編譯失敗,重載失敗
特別注意如下圖代碼塊
這種函數(shù)名一致列表一致不叫重載
如上圖這種函數(shù)名一致列表一致不叫重載,叫啥呢?哈哈哈
叫一模一樣啦,有木有一種1+1=多少時(shí)的那種突然的困惑哈哈哈哈~~~~
一調(diào)用函數(shù),都不值調(diào)用第一個(gè)add函數(shù)塊好還是第二個(gè)add函數(shù)塊好了,我們沒有瘋,只不過運(yùn)行的虛擬機(jī)已經(jīng)瘋了(為了造福廣大運(yùn)行系統(tǒng)后期寫代碼多的時(shí)候千萬要注意下喲,至少在函數(shù)名一致時(shí),形參列表切記不可一致)
從上意會(huì)到:
什么時(shí)候用重載函數(shù)?
當(dāng)定義的函數(shù)功能塊相同,但參與運(yùn)算的位置內(nèi)容不同時(shí),那么,這是就定義一個(gè)相同的函數(shù)名稱以表示功能,方便閱讀,
而通過形參列表的不同來區(qū)分不同名函數(shù)。
//打印一個(gè)所謂的99乘法表,但是有些用戶不想算到9 ,只想算到3?5?或6!那怎么辦?
//此時(shí)則再定義一個(gè)函數(shù)塊實(shí)現(xiàn)重載
函數(shù)重載99乘法表經(jīng)典案例
以上就是一種典型的重載形式,函數(shù)名不用變,只需要變函數(shù)形參列表即可
明確了什么是重載后,我們在升華下咱們的程序猿檔次,優(yōu)化重復(fù)性代碼,提高了代碼的復(fù)用性。
從上的代碼塊來分析,除了形參個(gè)數(shù)不同外,函數(shù)名和代碼塊功能幾乎是一模一樣的,對于程序猿大師來說,這真的是“無法直視”那么該如何優(yōu)化呢?如下圖程序猿大師初級優(yōu)化
大師的初級優(yōu)化,你get到什么了
怎么樣?兩個(gè)代碼圖,你get到什么了嗎?
重復(fù)性代碼不見了,而且提升了代碼的重復(fù)性,有木有?
給定原函數(shù),列出多個(gè)函數(shù)對比,問哪個(gè)函數(shù)重載了?如下圖:
重載案例對比加深印象
從上列咱們可以基本認(rèn)識到函數(shù)重載的具體表現(xiàn)方式,主要區(qū)分在函數(shù)形參列表的個(gè)數(shù),參數(shù)1和參數(shù)2,是有區(qū)分順序的,按順來區(qū)分,類型不同也算重載,但是注意一下,重載的概念和實(shí)現(xiàn)方式和返回值類型無關(guān)呢~~~
上面提供了編譯代碼,有興趣的朋友可以編譯運(yùn)行試試哈。
每天都會(huì)更新知識點(diǎn)和案例分享哦
點(diǎn)擊關(guān)注或收藏,與我們一起從基礎(chǔ)開始學(xué)習(xí)java每天更新一點(diǎn)新知識,新案例,每天吸收一點(diǎn)新能量。
點(diǎn)擊評論區(qū),對于細(xì)節(jié)的優(yōu)化,留言,一起探討喲。
總結(jié)
以上是生活随笔為你收集整理的java方法重载实事例_零基础java入门教程函数重载function实例化格式案例的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 网上申请信用卡好批吗
- 下一篇: 100元可以炒股吗