前提: 子类和父类之间
一个类的属性、静态方法或者内部类可以分别隐藏(hide)在其超类中可以访问到的具有相同名字(对方法而言就是相同的签名)的所有属性、静态方法或者内部类。上述成员被隐藏后,将组织其被继承:
class A {
protected String name = "AA";
public static void fly() {
System.out.println("class A fly");
}
}
class B extends A {
protected String name = "BB";
public static void fly() {
System.out.println("class B fly");
}
}
public class demo {
public static void main(String[] args) {
A n1 = new A();
A n2 = new B();
n1.fly(); // class A fly
n2.fly(); // class A fly
System.out.println(n1.name); // AA
System.out.println(n2.name); // AA
}
}
注意区分类的多态,多态也是发生在父类和子类,要求是 非静态方法的重写