http://www.verejava.com/?id=16992753789137
public class OverLoad
{
public static void main(String[] args)
{
Caculator c=new Caculator();
double result=c.add(10,20);
System.out.println(result);
//调用参数类型不同的重载方法
int result2=c.add(50,55);
System.out.println(result2);
//调用重载方法
double[] arr={20,30};
result=c.add(arr);
System.out.println(result);
//调用另一个重载方法
Operator op=new Operator(30,40);
result=c.add(op);
System.out.println(result);
}
}
/*
方法的重载:
在同一个类中, 有同名的方法名,不同的参数个数或参数类型,返回值跟重载没有关系
方法重载特性:
当对象引用调用方法的时候, 会自动根据方法的参数个数或类型, 调用相应的重载方法
*/
/*
定义一个计算类Caculator
类中定义一个公有的加方
*/
class Caculator
{
//输入两个数相加, 返回相加后的结
public double add(double a,double b)
{
return a+b;
}
public int add(int a,int b)
{
return a+b;
}
//方法重载
public double add(double[] arr)
{
return arr[0]+arr[1];
}
public double add(Operator op)
{
return op.getA()+op.getB();
}
}
class Operator
{
private double a;
private double b;
public Operator(double a,double b)
{
this.a=a;
this.b=b;
}
public double getA()
{
return this.a;
}
public double getB()
{
return this.b;
}
}

本文通过一个具体的计算器类实例,展示了Java中方法重载的概念及其应用。介绍了如何根据参数数量和类型的不同来区分同名方法,并通过示例代码演示了多种重载方法的调用方式。
478

被折叠的 条评论
为什么被折叠?



