重写:需要有继承关系,子类重写父类的方法
1. 方法名必须相同
2. 参数列表 列表必须相同
3. 修饰符:范围可以扩大但不能缩小 public>Protected>Default>private
4. 抛出的异常:范围,可以被缩小,但不能扩大ClassNotFoundException ---->Exception(大)
重写,子类的方法和父类的方法必须要一致,方法体不同
为什么要重写:
1. 父类的功能,子类不一定需要
2. 或不一定满足
package com.etc.ood.demo2;
public class A {
//重写是方法的重写和属性无关
public void test(){
System.out.println("a");
}
}
package com.etc.ood.demo2;
public class B extends A{
//Override重写
@Override//有功能的注释
public void test() {
System.out.println("b");
}
}
package com.etc.ood.demo2;
public class Application {
public static void main(String[] args) {
A a = new B();//子类重写了父类的方法
a.test();
System.out.println();
}
}