覆盖(或重写):
这里举个例子:publicvoid test(int a)throws NullPointerException { }
对于上一行的方法被重写时要保证:
方法名和参数列表一致(两同)
返回值和抛出的异常要在父类方法中的范围之内(两小)
修饰符要比父类方法大或者相等(一大)
隐藏:这是对类方法的static方法而言的。如果子类中定义了静态方法,则它会隐藏父类中形构相同的所有方法,但如果隐藏了父类中的实例方法,则会编译报错。
下面是例子:
//---接口A-----------
public interface A {
public void a();
}
//---抽象类B-----------
public abstract class B {
public abstract void b();
}
//---子类C继承B,并实现A接口-----------
public class C extends B implements A {
@Override
public static void a() { } // 编译报错
@Override
public static void b() { } // 编译报错
}
总结:子类重写方法时不能再用static修饰,否则重写的方法会被隐藏(只对子类可见)。
-------------------------------------------------------------------------------------------------------------------
由于本人水平有限,如有不妥和错误之处还请及时指出,万分感谢!!!^-^
-------------------------------------------------------------------------------------------------------------------