重载的表现:
- 形参类型不同
- 形参个数不同
- 形参类型和个数都不同
- 形参顺序不同
注:访问权限、返回值类型、抛出异常不同,不能视为重载
- 形参类型不同
public void method(int a) { } public void method(String a) { }
2.形参个数不同
public void method(int a) { } public void method(int a,int b) { }
3.形参类型和个数都不同
public void method(int a) { } public void method(int a,String b) { }
4.形参顺序不同
public void method(int a,String b) { } public void method(String b,int a) { }
错误示例:1.访问权限不同
private void method() { } public void method() { }
错误示例:2.返回值不同
public void method() { } public int method() { }
错误示例:3.抛出异常不同
public void method() throws FileNotFoundException{ } public void method() throws IOException{ }
总结:重载只表现为形参不同,为逻辑类似的功能提供相同的方法名(省去想不同方法名的烦恼),和不同的实现,使代码更加优雅。