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;
		}
	}*/
}

  

posted @ 2018-07-20 11:36  假如会点代码  阅读(139)  评论(0编辑  收藏  举报