override(重写,覆盖)
- (1)方法名、参数、返回值相同。
- (2)子类方法不能缩小父类方法的访问权限。
- (3)子类方法不能抛出比父类方法更多的异常(但子类方法可以不抛出异常)。
- (4)存在于父类和子类之间。
- (5)方法被定义为final不能被重写。
- (6)被覆盖的方法不能为private,否则在其子类中只是新定义了一个方法,并没有对其进行覆盖
class Fu{
int num = 3;
}
class Zi extends Fu{
int num = 5;
}
overload(重载,过载)
- (1)参数类型、个数、顺序至少有一个不相同。
- (2)不能重载只有返回值不同的方法名。
- (3)针对于一个类而言。
- (4)不能通过访问权限、返回类型、抛出的异常进行重载;
- (5)方法的异常类型和数目不会对重载造成影响
public static void main(String[] args){
System.out.println(add(1,2));
System.out.println(add(1.11,2.22));
}
//返回一个int类型相加的和
public static int add(int a, int b){
return a + b;
}
//返回一个double类型想加的和
public static double add(double a, double b){
return a + b;
}