Java方法重載實現(xiàn)原理及代碼實例
方法的重載
重載就是在一個類中,有相同的函數(shù)名稱,但形參不同的函數(shù)
方法重載的規(guī)則:
- 方法名稱必須相同
- 參數(shù)列表必須不同(個數(shù)不同,類型不同,參數(shù)排列順序不同)
- 方法的返回值類型可以相同也可以不相同
- 僅僅返回類型不同不足以成為方法的重載
實現(xiàn)理論
方法名稱相同時,編譯器會根據(jù)調(diào)用方法的參數(shù)個數(shù),參數(shù)類型等去諸葛匹配,以選擇對應(yīng)的方法,如果匹配失敗,則編譯器報錯
以比大小為例
package com.Xujie.Day09;
public class Java09_01 {
public static void main(String[] args) {
double max = max(10, 20);
System.out.println(max);
}
//比大小
public static double max(double num1, double num2) {
double result = 0;
if (num1 == num2) {
System.out.println("num1==num2");
return 0;//終止方法
}
if (num1>num2){
result=num1;
}else {
result=num2;
}
return result;
}
public static int max(int num1, int num2) {
int result = 0;
if (num1 == num2) {
System.out.println("num1==num2");
return 0;//終止方法
}
if (num1>num2){
result=num1;
}else {
result=num2;
}
return result;
}
}

以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
相關(guān)文章
Mybatis-Plus3.2.0 MetaObjectHandler 無法進行公共字段全局填充
這篇文章主要介紹了Mybatis-Plus3.2.0 MetaObjectHandler 無法進行公共字段全局填充,文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2019-11-11
如何將java -jar啟動的服務(wù)設(shè)置為systemd服務(wù)管理方式
本文詳細介紹了如何將Java應(yīng)用程序配置為由systemd管理的服務(wù),包括創(chuàng)建和配置.service文件的步驟,以及如何啟動、停止和查看服務(wù)狀態(tài)2025-01-01
Spring Data Jpa Mysql使用utf8mb4編碼的示例代碼
這篇文章主要介紹了Spring Data Jpa Mysql使用utf8mb4編碼的示例代碼,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧2018-11-11
Java中@Autowired與@Resource注解的區(qū)別詳解
這篇文章主要介紹了Java中@Autowired與@Resource注解的區(qū)別詳解,@Resource的作用相當(dāng)于@Autowired,只不過@Autowired按byType自動注入,而@Resource默認(rèn)按 byName自動注入罷了,@Resource有兩個屬性是比較重要的,需要的朋友可以參考下2023-11-11
springcloud引入spring-cloud-starter-openfeign失敗的解決
這篇文章主要介紹了springcloud?引入spring-cloud-starter-openfeign失敗的解決方案,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教2022-03-03
Dubbo+zookeeper搭配分布式服務(wù)的過程詳解
Dubbo作為分布式架構(gòu)比較后的框架,同時也是比較容易入手的框架,適合作為分布式的入手框架,下面是簡單的搭建過程,對Dubbo+zookeeper分布式服務(wù)搭建過程感興趣的朋友一起看看吧2022-04-04

