亚洲色影视在线播放_国产一区+欧美+综合_久久精品少妇视频_制服丝袜国产网站

學(xué)習(xí)方法

java方法重載

時間:2022-10-01 01:02:28 學(xué)習(xí)方法 我要投稿
  • 相關(guān)推薦

java方法重載

  對于同一個類,如果這個類里面有兩個或者多個重名的方法,但是方法的參數(shù)個數(shù)、類型、順序至少有一個不一樣,這時候局構(gòu)成方法重載。

  方法重載示例

  public class Test{

  public void a( ){

  };

  public void a( int i){

  };

  }

  說明:在Test類中有兩個方法,名字都相同,都是a。在調(diào)用方法a時,如果不傳參數(shù),則系統(tǒng)會自動調(diào)用第一個方法a,如果傳入一個 int 類型的參數(shù),則系統(tǒng)調(diào)用第二個方法a。

  2

  public class Test{

  public void a(int i){

  };

  public void a(String j){

  };

  }

  說明:在Test類中有兩個同名的方法a。在調(diào)用方法時,如果傳入一個int類型的參數(shù),則會自動調(diào)用第一個a方法,如果傳入一個String類型的參數(shù),則會自動調(diào)用第二個方法a。

  3

  public class Test{

  public void a(int i,String j){

  }

  public class a(String j,int i){

  }

  }

  說明:在Test類中有兩個同名的方法。在調(diào)用方法時,如果傳入的第一個參數(shù)類型為int,第二個參數(shù)類型為String,則自動調(diào)用第一個方法a。如果傳入的第一個參數(shù)為String類型,第二個參數(shù)類型為int,則自動調(diào)用第二個方法a。

  什么是方法的重載?

  方法重載是以統(tǒng)一的方式處理不同數(shù)據(jù)類型的一種手段。

  怎樣構(gòu)成方法的重載?

  方法名相同, 形參不同。而形參的不同又表示在: 1). 形參的個數(shù)不同 2). 形參的類型不同 3). 形參的順序不同

  注意事項

  1. 如果兩個方法的返回值不同, 而其他都相同。 這個時候并不構(gòu)成方法的重載。 在編譯的時候會報錯:

  示例代碼(錯誤):Test.java

  復(fù)制代碼 代碼如下:

  /*返回值的不同并不能構(gòu)成方法的重載*/

  public class Test {

  public static void main(String[] args) {

  }

  }

  class A {

  public void f() { //返回值為 void

  }

  public int f() { //返回值為 int, 其他和上面的f()方法是一樣的

  return 1;

  }

  }

  錯誤信息:

  復(fù)制代碼 代碼如下:

  Test.java:12: error: method f() is already defined in class A

  public int f() {

  ^

  1 error

  2. 構(gòu)造方法和普通方法一樣, 也可以方法重載。

  示例代碼(正確): Test.java

  復(fù)制代碼 代碼如下:

  /* 方法的重載

  * 輸出結(jié)果:

  * public A() {} 這個構(gòu)造方法被調(diào)用了

  * public A(int i) {} 這個構(gòu)造方法被調(diào)用了

  * public void f() {} 這個構(gòu)造方法被調(diào)用了

  * public void f(int i) {} 這個構(gòu)造方法被調(diào)用了

  */

  public class Test {

  public static void main(String[] args) {

  A aa1 = new A(); //調(diào)用9行那個方法

  A aa2 = new A(1); //調(diào)用13行那個方法

  aa1.f(); //調(diào)用17行那個方法

  aa2.f(1); //調(diào)用21行那個方法

  }

  }

  class A {

  public A() { //9行

  System.out.printf("public A() {} 這個構(gòu)造方法被調(diào)用了\n");

  }

  public A(int i) { //13行

  System.out.printf("public A(int i) {} 這個構(gòu)造方法被調(diào)用了\n");

  }

  public void f() { //17行

  System.out.printf("public void f() {} 這個構(gòu)造方法被調(diào)用了\n");

  }

  public void f(int i) { //21行

  System.out.printf("public void f(int i) {} 這個構(gòu)造方法被調(diào)用了\n");

  }

  }

【java方法重載】相關(guān)文章:

方法重載的條件09-23

什么是方法重載11-15

方法重載與覆蓋的區(qū)別11-04

方法重載和方法重寫的概念和區(qū)別09-06

方法重載和方法重寫的區(qū)別是什么11-16

java技術(shù)的學(xué)習(xí)方法10-07

Java學(xué)習(xí)方法有哪些10-06

安裝java jdk環(huán)境變量的方法10-05

JAVA程序員的學(xué)習(xí)方法指導(dǎo)10-07

java課程總結(jié)心得 java實驗總結(jié)與心得10-29