首页 > 其他 > 详细

035_面向对象_08_方法重载

时间:2018-11-14 12:04:54      阅读:122      评论:0      收藏:0      [点我收藏+]

一、概念部分

  a)方法的重载:是指同一个类中可以定义有相同的名字,但参数(参数的个数、类型、顺序)不同的多个方法。 调用时,会根据不同的参数(参数的个数、类型、顺序)选择对应的方法、只要对调用者不产生歧义即可。构造方法也和普通方法一样可以重载。

二、什么时候不构成方法的重载  

  a)返回值不同不构成方法的重载(int a(){}, double  a(){},  调用:a(),谁能告诉我是调哪个方法?

  b)形参的名称不同,不构成方法的重载、因为形参在调用者角色会产生歧义(我该调用那个?)

三、演示实例

package test;

/**
 * [测试方法的重载]
 * @author aeon
 *
 */
public class TestOverload {
    public int add(int a, int b){
        return a+b;
    }
}

class MyMath {
    int a;
    int b;

    public MyMath() {
    }

    public MyMath(int a) {
        this.a = a;
    }

    public MyMath(int b, int a) {
        this.b = b;
        this.a = a;
    }

    public int add(int b, double a) {
        return (int) (a + b);
    }

    public int add(double a, int b) {
        return (int) (a + b);
    }

    public int add(int a, int b) {
        return a + b;
    }

    public int add(int a, int b, int c) {
        return a + b + c;
    }
}

 

035_面向对象_08_方法重载

原文:https://www.cnblogs.com/aeon/p/9957033.html

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