方法的重载是指一个类中可以定义有相同的名字,但参数不同的多个方法,调用时,会根据不用的参数表选择对应的方法
比如
- public class Test {
- void max(int a,int b) {
- System.out.println(a>b ? a:b);
- }
-
- void max(double a,double b) {
- System.out.println(a>b ? a:b);
- }
-
- public static void main(String[] args) {
- Test t = new Test();
- t.max(3,4);
- t.max(3.0,4.4);
- }
-
- }
复制代码
输出为:
构造方法也可以重载
再来看一个例子吧
- class ChongZai{
- public void a(int a);
- public void a(Strting a);
- public void a(int a,int b);
- }
复制代码
如上就是一个重载了 而重载要满足一下条件:
1.必须是同一个类
2.方法名(也可以叫函数)一样
3.参数类型不一样或参数数量不一样
同时我也给LZ讲一下重载的作用吧 还是以上面的例子说吧
- ChongZai cz =new ChongZai();
- cz.a(1); //调用a(int a);
- cz.a("传的参数"); //调用a(String a)
- cz.a(1,2); //调用a(int a,int b)
复制代码
上面已经说了调用哪个方法了 而这个调用方法是程序按照你输入的参数来判断调用哪个方法的
重载的功能也讲下吧 就比如说你做游戏 那么可能游戏可以有多个人完 而完的人数又不确定是几个人 那么就可以用到重载了
比如说最多3个人完 那么你可以定义3个参数
- public void a(String a);
- public void a(String a,String b);
- public void a(String a,String b,String c);
复制代码
两个人那么你就调用2个参数的方法 3个人你就调用3个参数的方法 而如何调用上面已经说明了 |