java方法重載示例
什么是方法的重載?
方法重載是以統(tǒng)一的方式處理不同數(shù)據(jù)類型的一種手段。
怎樣構(gòu)成方法的重載?
方法名相同, 形參不同。而形參的不同又表示在: 1). 形參的個(gè)數(shù)不同 2). 形參的類型不同 3). 形參的順序不同
注意事項(xiàng)
1. 如果兩個(gè)方法的返回值不同, 而其他都相同。 這個(gè)時(shí)候并不構(gòu)成方法的重載。 在編譯的時(shí)候會(huì)報(bào)錯(cuò):
示例代碼(錯(cuò)誤):Test.java
/*返回值的不同并不能構(gòu)成方法的重載*/
public class Test {
public static void main(String[] args) {
}
}
class A {
public void f() { //返回值為 void
}
public int f() { //返回值為 int, 其他和上面的f()方法是一樣的
return 1;
}
}
錯(cuò)誤信息:
Test.java:12: error: method f() is already defined in class A
public int f() {
^
1 error
2. 構(gòu)造方法和普通方法一樣, 也可以方法重載。
示例代碼(正確): Test.java
/* 方法的重載
* 輸出結(jié)果:
* public A() {} 這個(gè)構(gòu)造方法被調(diào)用了
* public A(int i) {} 這個(gè)構(gòu)造方法被調(diào)用了
* public void f() {} 這個(gè)構(gòu)造方法被調(diào)用了
* public void f(int i) {} 這個(gè)構(gòu)造方法被調(diào)用了
*/
public class Test {
public static void main(String[] args) {
A aa1 = new A(); //調(diào)用9行那個(gè)方法
A aa2 = new A(1); //調(diào)用13行那個(gè)方法
aa1.f(); //調(diào)用17行那個(gè)方法
aa2.f(1); //調(diào)用21行那個(gè)方法
}
}
class A {
public A() { //9行
System.out.printf("public A() {} 這個(gè)構(gòu)造方法被調(diào)用了\n");
}
public A(int i) { //13行
System.out.printf("public A(int i) {} 這個(gè)構(gòu)造方法被調(diào)用了\n");
}
public void f() { //17行
System.out.printf("public void f() {} 這個(gè)構(gòu)造方法被調(diào)用了\n");
}
public void f(int i) { //21行
System.out.printf("public void f(int i) {} 這個(gè)構(gòu)造方法被調(diào)用了\n");
}
}
相關(guān)文章
Springboot實(shí)現(xiàn)多線程注入bean的工具類操作
這篇文章主要介紹了Springboot實(shí)現(xiàn)多線程注入bean的工具類操作,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧2020-08-08jenkins配置詳細(xì)指南(附j(luò)dk多個(gè)版本配置)
Jenkins是一款CICD(持續(xù)集成與持續(xù)交付)工具,Jenkins可以幫你在寫(xiě)完代碼后,一鍵完成開(kāi)發(fā)過(guò)程中的一系列自動(dòng)化部署的工作,這篇文章主要給大家介紹了關(guān)于jenkins配置的相關(guān)資料,文中還附j(luò)dk多個(gè)版本配置指南,需要的朋友可以參考下2024-02-02SpringMVC如何在生產(chǎn)環(huán)境禁用Swagger的方法
本篇文章主要介紹了SpringMVC如何在生產(chǎn)環(huán)境禁用Swagger的方法,小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧2018-02-02idea打不開(kāi)雙擊IDEA圖標(biāo)沒(méi)反應(yīng)的快速解決方案
這篇文章主要介紹了idea打不開(kāi)雙擊IDEA圖標(biāo)沒(méi)反應(yīng)的快速解決方案,本文給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2020-12-12Java編程實(shí)現(xiàn)用hash方法切割文件
這篇文章主要介紹了Java編程實(shí)現(xiàn)用hash方法切割文件,簡(jiǎn)單介紹了hash的概念,然后分享了使用方法示例,具有一定借鑒價(jià)值,需要的朋友可以了解下。2017-12-12初識(shí)sa-token及登錄授權(quán)簡(jiǎn)單實(shí)現(xiàn)
這篇文章主要為大家介紹了sa-token及登錄授權(quán)簡(jiǎn)單實(shí)現(xiàn)示例詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2023-07-07java實(shí)現(xiàn)簡(jiǎn)易飛機(jī)大戰(zhàn)
這篇文章主要為大家詳細(xì)介紹了java實(shí)現(xiàn)簡(jiǎn)易飛機(jī)大戰(zhàn),文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2022-05-05