java的重载(overload) (2013-10-11-163 写的日志迁移
有以下几点:
1.方法名相同。
2.方法的 参数类型、个数、顺序至少有一项不同。
3.方法的返回类型可以不同。
4.方法的修饰符可以不同。
5.仅返回类型和修饰符不同也不可以构成重载。
-------------------以下为代码演示:
/**
* 说明方法重载(是让类以统一的方式处理不同类型数据的一种手段)的各种演示:
*/
package czbk.jxy.study;
/**
* @author Archon
* @date 省略
*/
public class ChongZai {
/*返回较大的整数*/
public int getMax(int a,int b){
if(b>a){
return b;
}else{
return a;
}
}
public float getMax(float a, float b){ //重载(方法名必须相同) 返回类型不同,传入参数类型也不同
if(b>a){
return b;
}else{
return a;
}
}
/*public float getMax(float i, float j){ //报错了,光传入参数类型的名字不同是不能重载的
if(j>i){
return j;
}else{
return i;
}
}*/
public float getMax(double a, float b){ //重载(方法名必须相同) 返回类型相同,传入参数类型也不同
if(b>a){
return b;
}else{
return (float)a;
}
}
public float getMax(float a, double b){ //重载(方法名必须相同) 返回类型相同,传入参数类型也不同(顺序不同也行)
if(b>a){
return (float)b;
}else{
return a;
}
}
/*public double getMax(float a, double b){ //重载(方法名必须相同) 仅返回类型不相同,传入参数类型相同也不能够重载
if(b>a){
return (float)b;
}else{
return a;
}
}*/
/*protected float getMax(float a, double b){ //重载(方法名必须相同) 仅修饰符不同,返回类型相同,传入参数类型相同也不能够重载
if(b>a){
return (float)b;
}else{
return a;
}*/
/*private double getMax(float a, double b){ //重载(方法名必须相同) 重载(方法名必须相同) 仅修饰符和返回类型不同,传入参数类型相同也不能够重载
if(b>a){
return (float)b;
}else{
return a;
}
}*/
}

浙公网安备 33010602011771号