java重载的理解_JAVA学习.方法的重载的理解

package ljy.overload;

/**

*

*/

/**

* @author fshxxxyydys

*

*/

public class overloadMethod { //方法重载

//JAVA只支持方法重载,不支持符号重载

//在传统的语言中,方法名称不能重复,优秀的方法名资源

//只能被使用一次,很是遗憾,程序员必须花费额外的时间

//去费尽心机思考替代的方法名。

//在现代的编程语言,比如JAVA,支持方法名的重复使用,

//这种语法现象叫做方法名的重载,但是有一定的约束条件。

//1.参数的数量不同。

//2.参数的数量相同,参数的数据类型也要略有不同

//3.参数名、返回值以及访问修饰符均不作为考量的尺度。

//重载失败就会构成重名(duplicate method)

//重载给我们带来了超级方法和智能方法

//本质上:根本不存在方法的重载 在编译器编译的时候将

//所谓的重载的方法的名称全部改掉了,虽然这样但是我们

//享受到了所谓的“重载”所带来的乐趣和便利。

int add(int a,int b){ //编译器:add_int_int

return a + b;

}

double add(int a,double b){ //编译器:add_int_double

return a + b;

}

int add(int a,int b,int c){ //编译器:add_int_int_int

return a + b+ c;

}

//重名

//private void add(int c,int d){

//

//return c + d;

//}

double add(double a,double b){ //编译器:add_double_double

return a + b;

}

//不定参数,m不在是普通的整型变量,而是一个整型数组的名称

//一个方法中的不定参数只能有一个,而且必须是该方法参数列表的最后一个

double add(double a, int ... m ){

double sum = a;

for(int x:m)

sum += x;

return sum;

}

}

/**

*

*/

package ljy.overload;

/**

* @author fshxxxyydys

*

*/

public class Tester {

/**

* @param args

*/

public static void main(String[] args) {

overloadMethod om = new overloadMethod();

//智能:根据传入参数的样式,选则合适的方法进行调用

//System.out.println();就是一个最典型的例子,几乎

//你放进去的东西都可以被打印,因为一个方法名下有

//十几个函数在支持者它,所以你觉得它功能强大。

System.out.println(om.add(1, 2));

System.out.println(om.add(1, 2.0));

System.out.println(om.add(5.0, 2.0));

System.out.println(om.add(1, 2,3));

//第一个数是double型的,剩余的整型可以无限添加

System.out.println(om.add(1.8,1,2,3,4,5,6,7));

}

}

===============================================================

Result:

3

3.0

7.0

6

29.8

===============================================================

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值