Java 重写(Override)与重载(Overload)
1.覆写@override
覆写只能针对非静态、非final、非构造方法。如果想在子类覆写的方法中调用父类方法,可以使用super关键字。
覆写原则:“一大两小两同”
①“一大”:子类的方法访问权限控制符只能相同或者变大。
②“两小”:抛出异常和返回值只能变小,能够转型成父类对象。子类的返回值、抛出异常类型必须与父类的返回值、抛出异常类型存在继承关系。
③“两同”:方法名和参数必须完全相同。
2.重载@overload
在同一个类中,如果多个方法有相同的方法名称,不同的参数类型、参数个数、参数顺序,即称为重载,比如一个类中有多个构造方法。String类中的valueOf是比较著名的重载案例,它有九个方法,可以将输入的基本数据类型、数组、Object等转化为字符串。注意在使用重载机制时,不能有两个方法名称完全相同,参数类型和个数也相同,但是返回类型不同的方法。