java方法重载

                                                     Java方法重载

文章的总体布局

1首先我们先来了解为什么要使用方法重载

2 什么是方法重载

3 与方法重载相关的因素

4 与方法重载无关的因素

1.首先我们先来了解为什么要使用方法重载

如下方代码块所示,代码块中的代码都是功能类似的方法,但是方法名却都不同这样子导致很难记忆,太过于麻烦

 1 package cn.itcast;
 2 
 3 public class Test {
 4     public static void main(String[] args) {
 5       sum();
 6       sum1(1);
 7       sum2(1,2);
 8       sum3(1,2,3);
 9     }
10 
11     public static int sum() {
12         return  0;
13     }
14     public static int sum1(int a) {
15             return  a;
16     }
17     public static int sum2(int a,int b) {
18         return  a+b;
19     } 
20     public static int sum3(int a,int b,int c) {
21         return  a+b;
22     }
23 
24 }

2.重载

java就有了重载这个概念来解决这种问题,那么何为重载呢?

所谓重载就是多个方法的名称一样,但是参数列表不一样(指的是参数的个数和类型),其好处就是记住唯一的方法名,就可以实现多个类似的功能

如下方代码块所示

 1 package cn.itcast;
 2 
 3 public class Test {
 4     public static void main(String[] args) {
 5       sum();
 6       sum(1);
 7       sum(1,2);
 8       sum(1,2,3);
 9     }
10 
11     public static int sum() {
12         System.out.println("没有参数的方法被执行了");
13         return  0;
14     }
15     public static int sum(int a) {
16         System.out.println("含有2个参数的方法被执行了");
17             return  a;
18     }
19     public static int sum(int a,int b) {
20         System.out.println("含有2个参数的方法被执行了");
21         return  a+b;
22     }
23     public static int sum(int a,int b,int c) {
24         System.out.println("含有3个参数的方法被执行了");
25         return  a+b+c;
26     }
27 
28 }

由运行结果可知代码执行正确

 

 3. 与方法重载相关的因素

1 .参数的个数不同


package cn.itcast;

public class Test {
    public static void main(String[] args) {
      int a;
      a=sum();
      System.out.println(a);
      a= sum(1);
      System.out.println(a);
    }

    public static int sum() {
        System.out.println("没有参数的方法被执行了");
        return  0;
    }
    public static int sum(int a) {
        System.out.println("含有1个参数的方法被执行了");
            return  a;
    }


}

运行结果

 

2.参数的类型不同


 1 package cn.itcast;
 2 
 3 public class Test {
 4     public static void main(String[] args) {
 5         sum(10);
 6         sum("我是字符串");
 7     }
 8     public static void sum(String a) {
 9         System.out.println("字符串参数的方法被执行了");
10 
11     }
12     public static void sum(int a) {
13         System.out.println("数字参数的方法被执行了");
14     }
15 }

运行结果

 


 3参数的多类型顺序不同

 1 package cn.itcast;
 2 
 3 public class Test {
 4     public static void main(String[] args) {
 5         sum("字符串一号",10);
 6         sum(20,"字符串二号");
 7     }
 8     public static void sum(String b,int a) {
 9         System.out.println("字符串的值:"+b);
10         System.out.println("数值的值:"+a);
11 
12     }
13     public static void sum(int a,String b) {
14         System.out.println("字符串的值:"+b);
15         System.out.println("数值的值:"+a);
16     }
17 }

 

运行结果

 

 

4 与方法重载无关的因素
1返回值的类型
如图所示二者的方法名相同,但是返回值的类型不同,会报错

 


 

 

 


 


2参数的名称
二者的参数名不同,方法名及返回值相同,函数报错

 


 以上就是方法重载的一些基本知识,如果有哪些地方有不足或则错误之处还请大家批评指正

 
博客地址:https://www.cnblogs.com/pjhaymy/

 

 

 

posted @ 2020-07-05 12:31  一只胡说八道的猴子  阅读(273)  评论(0编辑  收藏  举报