首页 > 其他 > 详细

关于方法重载构成的条件

时间:2020-10-28 21:09:04      阅读:51      评论:0      收藏:0      [点我收藏+]

即参数列表不同,参数个数不同,参数类型不同方能构成方法重载!

与修饰符类型、返回值类型、形参的命名没有关系!

比如:

public void getSum(int i,int j){

}

与其不构成方法重载的方法有:

public int getSum(int i,int j){
   return 0;
}

private void getSum(int i,int j){

}

public void getSum(int a,int b){

}

以上三个方法都不构成方法重载!

 

在现在的JDK中,新增了几个初始化方法:

    public void show(int i){

    }

    public void show(String s){

    }

    public void show(String...str){

    }

//    public void show(String[] str){
//
//    }

前三种构成了方法重载,第二种是输入一个String类型的字符串

而第三种是可以输入很多个String类型的字符串

但是如果有了第三种,那么第四种方法就不能存在,因为第三和第四种是等价的

在以前的JDK中,如果想输入多个字符串,那么就只能用第四种方法,即开辟一个数组来储存

在新版本的JDK中,可以直接利用第三种方法进行多个字符串的输入

而这两种是等价的!

 

还有一点要注意

当想输入多个String类型的字符串和其他类型的变量时,就必须要将:String...str

放在最末尾

比如:

//    public void show(String...str,int i){
//        
//    }
    
    public void show(int i,String...str){
        
    }

必须是这样写的,第一种写法会报错!

因此按照这个说法,这个可变个数的形参就只能在方法中声明一个!

因为声明多个必定就会导致有的在前面,所以只能声明一个可变个数的形参。

 

关于方法重载构成的条件

原文:https://www.cnblogs.com/DiamondDavid/p/13893388.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!