Java?方法的重載與參數(shù)傳遞詳解
方法重載概述
方法重載指同一個(gè)類中定義的多個(gè)方法之間的關(guān)系,滿足下列條件的多個(gè)方法互相構(gòu)成重載
* 多個(gè)方法在同一個(gè)類中
* 多個(gè)放方法具有相同方法名
* 多個(gè)方法的參數(shù)不相同,類型不同或數(shù)量不同
方法重載特特點(diǎn)
* 重載僅對(duì)應(yīng)方法的定義,與方法的調(diào)用無(wú)關(guān),調(diào)用方法參照標(biāo)準(zhǔn)格式
* 重載僅針對(duì)同一個(gè)類中方法的名稱與參數(shù)進(jìn)行識(shí)別,與返回值無(wú)關(guān),換句話說(shuō)不能通過(guò)返回值來(lái)判斷兩個(gè)方法是否構(gòu)成重載
示例:
public class MethodDemo{
public static float fn(int a){
//方法體
}
public static int fn(int a,int b){
//方法體
}
}方法重載練習(xí)
需求:使用方法重載的思想,設(shè)計(jì)比較兩個(gè)整數(shù)是否相同的方法,兼容全整數(shù)類型(byte,short,int,long)
思路:
1.定義比較兩個(gè)數(shù)字的是否相同的方法compare()方法,參數(shù)選擇兩個(gè)int型參數(shù)
public static boolean compare(int a,int b){
return a==b;
}2.定義對(duì)應(yīng)的重載方法,變更對(duì)應(yīng)的參數(shù)類型,參數(shù)變更為兩個(gè)long型參數(shù)
public static boolean compare(long a,long b){
return a==b;
}3.定義所有重載方法,兩個(gè)byte類型與兩個(gè)short類型參數(shù)
public static boolean compare(byte a,byte b){
//代碼片段
}
public static boolean compare(short a,short b){
//代碼片段
}4. 完成方法調(diào)用,運(yùn)行測(cè)試結(jié)果
public static void main(String args[ ]){
system.out.println(cpmpare(10,20));
}示例代碼:
public class hmm081 {
public static void main(String[] args) {
//調(diào)用方法
System.out.println(compare(10,20));
//強(qiáng)轉(zhuǎn)
System.out.println(compare((byte)10,(byte)20));
System.out.println(compare((long)10,(long)10));
}
public static boolean compare(int a,int b){
System.out.println("int");
return a==b;
}
public static boolean compare(long a,long b){
System.out.println("long");
return a==b;
}
public static boolean compare(byte a,byte b){
System.out.println("byte");
return a==b;
}
public static boolean compare(short a,short b){
System.out.println("short");
return a==b;
}
}方法參數(shù)傳遞
方法參數(shù)傳遞(基本類型)
對(duì)于基本數(shù)據(jù)類型參數(shù),形式參數(shù)的改變,不影響實(shí)際參數(shù)的值

雖然形參change()內(nèi)的number改變,但main()參數(shù)不變,不影響實(shí)際參數(shù)值,所以第二次輸出結(jié)果還是100
方法參數(shù)傳遞(引用類型)
對(duì)于引用類型的參數(shù),形式參數(shù)的改變,影響實(shí)際參數(shù)的值,如數(shù)組。


到此這篇關(guān)于Java 方法的重載與參數(shù)傳遞詳解的文章就介紹到這了,更多相關(guān)Java 方法重載內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
IDEA中springboot的熱加載thymeleaf靜態(tài)html頁(yè)面的方法
這篇文章主要介紹了IDEA中springboot的熱加載thymeleaf靜態(tài)html頁(yè)面的方法,本文通過(guò)實(shí)例代碼給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2023-07-07
java中brew安裝rabbitmq以及簡(jiǎn)單實(shí)例
RabbitMQ是基于AMQP協(xié)議,由Erlang語(yǔ)言開發(fā)的開源消息隊(duì)列系統(tǒng),廣泛應(yīng)用于分布式系統(tǒng)中,用于應(yīng)用程序間的消息傳遞,它支持多種交換機(jī)類型,如直連交換機(jī)、扇形交換機(jī)和主題交換機(jī)等,能夠滿足不同的消息路由需求2024-10-10
java springmvc 注冊(cè)中央調(diào)度器代碼解析
這篇文章主要介紹了java springmvc 注冊(cè)中央調(diào)度器代碼解析,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下2019-08-08
如何在springMVC的controller中獲取request
這篇文章主要介紹了如何在springMVC的controller中獲取request,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下2019-12-12
spring的UnexpectedRollbackException事務(wù)嵌套示例解析
這篇文章主要為大家介紹了spring的UnexpectedRollbackException事務(wù)嵌套示例解析,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2023-09-09
Spring AOP注解失效的坑及JDK動(dòng)態(tài)代理
這篇文章主要介紹了Spring AOP注解失效的坑及JDK動(dòng)態(tài)代理,小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧2018-03-03

