尚硅谷JavaSE基础

5.4.3 重载

  1. 重载的概念

在同一个类中,允许存在一个以上的同名方法,只要它们的参数不同即可。

参数不同的含义是仅参数个数不同 或者 类型不同 或者 顺序不同.

注意 :

参数不同不包含参数名的不同.

  1. 如何重载

在同一个类中写同名方法, 保证参数不同即可

public class Person {  

    // 这个方法就可以和下面2个方法形成重载

public int add(int a, int b) {

    System.out.println(“a + b”);

    int c = a + b;

    return c;

}

public double add(int a, double b) {

    return a + b;

}

public double add(double a, int b) {

    return a + b;

}

public void test() {

    System.out.println(“test()”);

}

}

 

  1. 重载的方法的调用

调用重载方法取决于实参列表, 和形参列表要匹配才可以, 或者也可以是被形参列表兼容.

public class PersonTest {

public static void main(String[] args) { 

Person t = new Person();

        System.out.println(t.add(30, 50)); // 调用 int add(int a, int b)

System.out.println(t.add(209, 0.502)); // 调用 double add(int a, double b)

}

}

 

  1. 重载的作用

在调用同名方法时, 只需要实参不同即可, 调用者调用这个方法就变得简单, 也不用再记忆多个不同的方法名. 前提是这些重载的方法有类似的功能.

  1. 重载的练习

1.判 断:

与void show(int a,char b,double c){}构成重载的有:

  1. void show(int x,char y,double z){}   
  2. int show(int a,double c,char b){}   
  3. c)  void show(int a,double c,char b){}  
  4. d)  boolean show(int c,char b){}  
  5. e)  void show(double c){}  
  6. f)  double show(int x,char y,double z){}  
  7. g)  void shows(double c){}