學(xué)習(xí)啦 > 知識大全 > 知識百科 > 百科知識 > java中什么是重載

java中什么是重載

時(shí)間: 歐東艷656 分享

java中什么是重載

  重載,簡單說,就是函數(shù)或者方法有同樣的名稱,但是參數(shù)列表不相同的情形,這樣的同名不同參數(shù)的函數(shù)或者方法之間,互相稱之為重載函數(shù)或者方法。

  Java方法重載(overloading method) 是在一個(gè)類里面,方法名字相同,而參數(shù)不同。返回類型呢?可以相同也可以不同。

  實(shí)踐: 重載的例子

  public class MethodOverloading {

  void recieve(int i) {

  System.out.println("接收一個(gè)int數(shù)據(jù)");

  System.out.println("i="+i);

  }

  void recieve(float f) {

  System.out.println("接受一個(gè)float型的數(shù)據(jù)");

  System.out.println("f="+f);

  }

  void recieve(String s) {

  System.out.println("接受一個(gè)String型數(shù)據(jù)");

  System.out.println("s="+s);

  }

  public static void main(String[] args){

  MethodOverloading m = new MethodOverloading();

  m.recieve(3456);

  m.recieve(34.56);

  m.recieve(“......“);

  }

  }

  大家看到了上面的例子方法receive()有三個(gè),名字相同參數(shù)不同。這樣的話,在main()調(diào)用的時(shí)候,參數(shù)用起來就很方便了。重寫的例子似乎不用舉了,記不住的話,就和“覆蓋”。

  有時(shí)候,重載和重寫的方式有些復(fù)雜,在jdk5里面。有一些方式能簡化一些。我們來看看吧,jdk5的可變參數(shù)。 如果把相同參數(shù)類型的方法重載好幾遍真的是很煩。就一個(gè)方法,pri(String args), pri(String arg0 ,String arg1), pri(String arg0,String arg1,String arg2), pri(String arg0,String arg1,String arg2,String arg3)。這樣的話會寫很多煩瑣的代碼?,F(xiàn)在jdk5可以,用“…”來代替這些參數(shù)。

245887