一、方法重载
1、定义:Java中允许同一个类中,多个同名方法存在,但要求形参列表不一致
2、方法重载的好处:
1)减轻了起名的麻烦;
2)减轻了记名的麻烦;
3)利于接口编程。
3、重载的注意事项和使用细节
1)、方法名:必须相同;
2)参数列表:必须不同(形参类型或者个数或者顺序,至少有一样不同,参数名无要求)
3)返回类型:无要求;
那在这里举个小栗子吧!
public int calculator(int a1,int a2)
public int calculator(int n1,int n2)
public int sunny(int a,int b)
public void sunny(int a,int b)
以上两个都不构成重载;
public int money(int a,int b)
public int money(int a,int b,String name)
这个参数列表不一样,构成重载。
二、方法重写、覆盖(override)
1、方法覆盖(重写)就是子类有一个方法,和父类的某个方法的名称,返回类型,参数一样,那么我们就说子类的这个方法覆盖了父类的方法。
2、注意事项和使用细节
1)、子类的方法的形参列表,方法名称,要和父类方法的形参列表,方法名称完全一样;
2)、子类方法的返回类型和父类的 返回类型一样,或者是父类返回类型的子类,比如 父类返回类型是Object,子类方法返回类型是String;
3)、子类方法不能缩小父类的访问权限。
访问权限: public>protected>默认>private;
三、总结
名称 | 发生范围 | 方法名 | 形参列表 | 返回类型 | 修饰符 |
重载(overload) | 本类 | 必须一样 | 类型,个数或者顺序至少有一个不同 | 无要求 | 无要求 |
重写(override) | 子父类 | 必须一样 | 相同 | 子类重写的方法,返回的类型和父类的返回类型一致,或者是其子类 | 子类方法不能缩小父类的访问范围。 |