最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

java必學(xué)必會(huì)之方法的重載(overload)

 更新時(shí)間:2015年12月03日 14:23:20   作者:孤傲蒼狼  
java必學(xué)必會(huì)之方法的重載,介紹了方法的重載、構(gòu)造方法的重載,想要學(xué)好java方法的重載的朋友一定要好好閱讀這篇文章

一、方法的重載

  

  方法名一樣,但參數(shù)不一樣,這就是重載(overload)。

  所謂的參數(shù)不一樣,主要有兩點(diǎn):第一是參數(shù)的個(gè)數(shù)不一樣,第二是參數(shù)的類型不一樣。只要這兩方面有其中的一方面不一樣就可以構(gòu)成方法的重載了。

package cn.galc.test;

public class TestOverLoad {

  void max(int a, int b) {
    System.out.println(a > b ? a : b);
  }

  /*
   * int max(int a, int b) { 
   *     return a > b ? a : b; 
   * }
   */

  void max(float a, float b) {
    System.out.println(a > b ? a : b);
  }
}

  這里有void修飾符的兩個(gè)max方法名字相同,但它們的參數(shù)類型不一樣,所以可以構(gòu)成重載。而int  max(int a , int b)方法與void  max(int a, int b)方法是不構(gòu)成重載的,現(xiàn)在它們是重名的兩個(gè)方法,在一個(gè)類中聲明兩個(gè)重名的方法是不允許的,編譯會(huì)出錯(cuò)。方法名一樣,參數(shù)類型一樣,只有返回值不一樣,這個(gè)不構(gòu)成重載,因?yàn)榉椒梢赃@么調(diào)用,調(diào)用一個(gè)方法時(shí)可以不使用的它返回值,所以當(dāng)調(diào)用這兩個(gè)方法時(shí),把整型的數(shù)傳進(jìn)去,由于兩個(gè)方法都是一樣的名字,一樣的參數(shù)類型,所以編譯器無(wú)法區(qū)分到底要調(diào)用的是哪一個(gè)方法。構(gòu)成重載深層次的原因:只要這兩個(gè)方法編譯器能區(qū)分開(kāi)來(lái),在調(diào)用的時(shí)候知道要調(diào)用的是哪一個(gè),不會(huì)產(chǎn)生混淆,這兩個(gè)方法就構(gòu)成重載。

再看下面這兩個(gè)方法:

int max(int a, int b) {
  System.out.println("調(diào)用的int max(int a, int b)方法");
  return a > b ? a : b;
}
   
int max(short a, short b) {
  System.out.println("調(diào)用的int max(short a, short b)方法");
  return a > b ? a : b;
}

  這兩個(gè)方法也是可以構(gòu)成重載的,因?yàn)榫幾g器一看到整數(shù),就會(huì)把它當(dāng)作int類型。所以當(dāng)把整數(shù)傳進(jìn)來(lái)的時(shí)候,編譯器首先調(diào)用的是max(int a , int b)這個(gè)方法。而要想調(diào)用max(short a ,short b)這個(gè)方法,那么就得在main方法里面這樣寫:

public static void main(String[] args) {
  TestOverLoad t= new TestOverLoad();
  t.max(3,4); //這里調(diào)用的是max(int a , int b)這個(gè)方法
  short a = 3;
  short b = 4;
  t.max(a, b); //這里調(diào)用的是max(short a , short b)這個(gè)方法。
}

二、構(gòu)造方法的重載

與普通方法一樣,構(gòu)造方法也可以重載

package cn.galc.test;

public class Person {

  int id;
  int age;
  
  /**
   * 構(gòu)造方法
   */
  public Person() {
    id=0;
    age=20;
  }
  
  /**
   * 構(gòu)造方法重載一
   * @param i
   */
  public Person(int i) {
    id=i;
    age=20;
  }
  
  /**
   * 構(gòu)造方法重載二
   * @param i
   * @param j
   */
  public Person(int i,int j) {
    id=i;
    age=j;
  }
}

以上就是針對(duì)java方法的重載進(jìn)行的詳細(xì)解釋,希望對(duì)大家的學(xué)習(xí)有所幫助。

相關(guān)文章

  • SpringBoot?Validation快速實(shí)現(xiàn)數(shù)據(jù)校驗(yàn)的示例代碼

    SpringBoot?Validation快速實(shí)現(xiàn)數(shù)據(jù)校驗(yàn)的示例代碼

    在實(shí)際開(kāi)發(fā)中,肯定會(huì)經(jīng)常遇到對(duì)參數(shù)字段進(jìn)行校驗(yàn)的場(chǎng)景,通常我們只能寫大量的if else來(lái)完成校驗(yàn)工作,而如果使用SpringBoot Validation則可以輕松的通過(guò)注解來(lái)完成,接下來(lái)小編給大家介紹下利用SpringBoot?Validation快速實(shí)現(xiàn)數(shù)據(jù)校驗(yàn)的示例代碼,需要的朋友參考下吧
    2022-06-06
  • java實(shí)現(xiàn)計(jì)算器功能

    java實(shí)現(xiàn)計(jì)算器功能

    這篇文章主要為大家詳細(xì)介紹了java實(shí)現(xiàn)計(jì)算器功能,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2020-02-02
  • Jenkins系統(tǒng)如何進(jìn)行數(shù)據(jù)備份

    Jenkins系統(tǒng)如何進(jìn)行數(shù)據(jù)備份

    隨著我們的長(zhǎng)期使用,Jenkins系統(tǒng)中的內(nèi)容會(huì)越來(lái)越多,特別是一些配置相關(guān)的東西,不能有任何丟失。這個(gè)時(shí)候我們就需要定期備份我們的Jenkins系統(tǒng),避免一些誤操作不小心刪除了某些重要文件,本文就將介紹下Jenkins系統(tǒng)如何進(jìn)行數(shù)據(jù)備份
    2021-06-06
  • maven利用tomcat插件部署遠(yuǎn)程Linux服務(wù)器的步驟詳解

    maven利用tomcat插件部署遠(yuǎn)程Linux服務(wù)器的步驟詳解

    Maven已經(jīng)是Java的項(xiàng)目管理常用方式,下面這篇文章主要給大家介紹了關(guān)于maven利用tomcat插件部署遠(yuǎn)程Linux服務(wù)器的相關(guān)資料,文中通過(guò)示例代碼介紹的非常詳細(xì),需要的朋友可以參考借鑒,下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧。
    2017-11-11
  • SpringCloud實(shí)戰(zhàn)之Feign聲明式服務(wù)調(diào)用

    SpringCloud實(shí)戰(zhàn)之Feign聲明式服務(wù)調(diào)用

    這篇文章主要介紹了SpringCloud實(shí)戰(zhàn)之Feign聲明式服務(wù)調(diào)用,小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧
    2018-05-05
  • Java 中責(zé)任鏈模式實(shí)現(xiàn)的三種方式

    Java 中責(zé)任鏈模式實(shí)現(xiàn)的三種方式

    本文重點(diǎn)給大家介紹java中如何編寫責(zé)任鏈模式。主要從下面3個(gè)框架中的代碼中介紹。非常不錯(cuò),需要的朋友參考下吧
    2017-09-09
  • SpringBoot加密配置文件的SQL賬號(hào)密碼方式

    SpringBoot加密配置文件的SQL賬號(hào)密碼方式

    這篇文章主要介紹了SpringBoot加密配置文件的SQL賬號(hào)密碼方式,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2022-06-06
  • Java8的default方法詳細(xì)介紹

    Java8的default方法詳細(xì)介紹

    這篇文章主要介紹了Java8的default方法,詳細(xì)介紹了什么是default方法,在多繼承時(shí)的處理等,需要的朋友可以參考下
    2014-04-04
  • Spring中OpenFeign的使用方法最佳實(shí)踐

    Spring中OpenFeign的使用方法最佳實(shí)踐

    這篇文章主要介紹了Spring中OpenFeign使用的相關(guān)資料,OpenFeign是一個(gè)聲明式的WebService客戶端,簡(jiǎn)化了微服務(wù)之間的調(diào)用,類似于Controller調(diào)用Service,文中通過(guò)代碼介紹的非常詳細(xì),需要的朋友可以參考下
    2025-02-02
  • Spring?Boot中KafkaListener的介紹、原理和使用方法案例詳解

    Spring?Boot中KafkaListener的介紹、原理和使用方法案例詳解

    本文介紹了Spring Boot中 @KafkaListener 注解的介紹、原理和使用方法,通過(guò)本文的介紹,我們希望讀者能夠更好地理解Spring Boot中 @KafkaListener 注解的使用方法,并在項(xiàng)目中更加靈活地應(yīng)用
    2023-09-09

最新評(píng)論

桐城市| 革吉县| 镶黄旗| 大名县| 洛扎县| 荆门市| 盐亭县| 宾川县| 二连浩特市| 盱眙县| 杂多县| 沁阳市| 安溪县| 溧水县| 洪洞县| 乐安县| 徐闻县| 辉县市| 咸阳市| 屏东市| 大港区| 肃宁县| 航空| 柯坪县| 定远县| 南和县| 哈密市| 焦作市| 威宁| 嘉鱼县| 嵊泗县| 永仁县| 保康县| 报价| 安顺市| 乌拉特后旗| 怀柔区| 长汀县| 柳江县| 迁西县| 阳原县|