特别声明:文章多为网络转载,资源使用一般不提供任何帮助,特殊资源除外,如有侵权请联系QQ403593407!本站提供的所有教程/文章/软件均仅供测试学习,造成的后果与本站无关!请不要用作非法用途,本站将记录用户下载记录做保存,如用户后期有违法行为方便提供给警方。

Java学习教程系列(五)方法重载-overload

Java学习(五)方法重载-overload

概念

在Java中,一个类中的多个方法可以有相同的名字,不同的参数列表,这样的一组方法构成了方法重载。经过重载的方法可以有不同的参数个数、参数的类型、参数的顺序。

public class Test {
   //一个普通的方法
   public void testFun(){
       System.out.println("这是一个没有参数的方法");
   }
   //经过重载后可以传入整数的方法
   public void testFun(int x){
       System.out.println("这是整数" x);
   }
   //经过重载后可以传入字符串的方法
   public void testFun(String x){
       System.out.println("这是字符串" x);
   }
   //经过重载后可以传入数组的方法
   public void testFun(int[] x){
       System.out.println("这是数组");
   }

   public static void main (String[] args){
       Test fun = new Test();
       //无参数执行匹配无参数的方法
       fun.testFun();
       //传入整数类型的方法会匹配传递参数为int类型的方法
       fun.testFun(1);
       //传入字符串类型的方法会匹配传递参数为String类型的方法
       fun.testFun("字符串");
       //传入数组类型的方法会匹配传递参数为int[]类型的方法
       int[] arr={1,2,3};
       fun.testFun(arr);
   }
}

执行结果:

这是一个没有参数的方法

这是整数1

这是字符串字符串

这是数组

定位方法

系统在调用方法的时候,首先通过方法的名字来定位方法;

如果有方法名字一样的(经过重载),系统会通过参数的数据类型定位方法(如上述程序);

如果没有与之传递参数类型一致的方法,系统会自动找一个可以进行转换的参数类型进行转换(如下)。

//使用上面例子的类
public static void main (String[] args){
   Test fun = new Test();
   //传入一个char类型的a,由于上面的方法中没有char类型参数的方法,系统会自动转换成已有的int类型的方法所需要的参数,简而言之,char类型的a会被转换成int类型的97
   fun.testFun(\'a\');
   //我们也可以自己强制转换数据类型,如下
   fun.testFun(int(\'a\'))
}

执行结果:

这是整数97

这是整数97

未经允许不得转载:作者:admin, 转载或复制请以 超链接形式 并注明出处 夜河资源网
原文地址:《Java学习教程系列(五)方法重载-overload》 发布于2019-12-04

分享到:
赞(0)

评论 抢沙发

6 + 8 =


电信无限流量卡
无限流量卡限时9.9元全国包邮!不限速无套路!25元/月享100G流量!35元/月享200G流量!55元享受500G流量!!
切换注册

登录

忘记密码 ?

您也可以使用第三方帐号快捷登录

Q Q 登 录
微 博 登 录
切换登录

注册