Java?方法的重載與參數(shù)傳遞詳解
方法重載概述
方法重載指同一個(gè)類中定義的多個(gè)方法之間的關(guān)系,滿足下列條件的多個(gè)方法互相構(gòu)成重載
* 多個(gè)方法在同一個(gè)類中
* 多個(gè)放方法具有相同方法名
* 多個(gè)方法的參數(shù)不相同,類型不同或數(shù)量不同
方法重載特特點(diǎn)
* 重載僅對(duì)應(yīng)方法的定義,與方法的調(diào)用無關(guān),調(diào)用方法參照標(biāo)準(zhǔn)格式
* 重載僅針對(duì)同一個(gè)類中方法的名稱與參數(shù)進(jìn)行識(shí)別,與返回值無關(guān),換句話說不能通過返回值來判斷兩個(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)文章
MQ的分類組成優(yōu)缺點(diǎn)測(cè)試點(diǎn)入門教程
這篇文章主要為大家介紹了MQ的分類組成優(yōu)缺點(diǎn)測(cè)試點(diǎn)入門教程,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2022-05-05Java利用移位運(yùn)算將int型分解成四個(gè)byte型的方法
今天小編就為大家分享一篇關(guān)于Java利用移位運(yùn)算將int型分解成四個(gè)byte型的方法,小編覺得內(nèi)容挺不錯(cuò)的,現(xiàn)在分享給大家,具有很好的參考價(jià)值,需要的朋友一起跟隨小編來看看吧2018-12-12Java實(shí)現(xiàn)新建有返回值的線程的示例詳解
本文主要介紹了一個(gè)Java多線程的例題,題目是:使用ThreadLocal管理一號(hào)和二號(hào)線程,分別存入100元,在三號(hào)線程中使用利用一號(hào)和二號(hào)的計(jì)算結(jié)果來算出賬戶的實(shí)際金額。感興趣的可以了解一下2022-09-09mybatis遞歸 一對(duì)多的實(shí)現(xiàn)方法示例
這篇文章主要給大家介紹了關(guān)于mybatis遞歸 一對(duì)多實(shí)現(xiàn)的相關(guān)資料,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2018-08-08Java編程實(shí)現(xiàn)比對(duì)兩個(gè)文本文件并標(biāo)記相同與不同之處的方法
這篇文章主要介紹了Java編程實(shí)現(xiàn)比對(duì)兩個(gè)文本文件并標(biāo)記相同與不同之處的方法,涉及java針對(duì)文本文件的讀取、遍歷、判斷等相關(guān)操作技巧,需要的朋友可以參考下2017-10-10