@
- 方法重载
1.方法名相同
2.参数列表不同
public void person(double height,double weight){
}
public void person(String name,int age){
}
上面两个方法的方法名都为person,但是两者的形参都不同,这种就可以称为方法的重载。
3.参数列表(个数不同、类型顺序不同、类型不同)
public void person(int age,String name){
}
public void person(String name,int age){
}
上述方法,虽然形参相同,但是类型顺序不一样,其余两种情况同理可得,都属于方法的重载。
- 方法重写
- 方法名相同
- 参数列表相同
- 返回值只能是本类或者是其子类
方法重写只存在于继承关系中,只有子类才能重写父类中的方法。方法重写虽然不能修改参数列表,但是可以根据需求更改方法内容,实现比父类更强大功能。
class father{
public void work(){
}
}
class child extends father {
public void work(){
}
}
方法名 | 参数列表 | 返回值 | 访问修饰符 | 抛出异常 |
---|---|---|---|---|
方法重写 | 相同 | 只能是本类或者是其子类 | 不能比父类更严格 | 不能比父类更宽泛 |
方法重载 | 不相同 | 无关 | 无关 | 无关 |