请不要使用工具运行,看看Test类main方法执行的结果是?
package test;
public class Parent
{ public static String staticname = "parentStaticname";
public String name = "Parent";
public String getName()
{ return name; }
} public class Child extends Parent
{ public static String staticname = "childStaticname";
public String name = "child";
public String getName()
{ return name; }
public String getchildName()
{ return name; }
}
public class Test
{ public static void main(String[] args)
{ Parent parent;
Child child;
child = new Child();
parent = (Child)child;
System.out.println(child.getClass());
System.out.println(child.name);
System.out.println(child.getName());
System.out.println(parent.getClass());
System.out.println(parent.name);
System.out.println(parent.getName());
System.out.println(child.staticname);
System.out.println(parent.staticname);
}
结果为: class test.Child
child
child
class test.Child
Parent
child
childStaticname
parentStaticname
动态字段和静态字段均不能被覆盖, 静态方法也不能覆盖。换句话说就是JAVA动态绑定市不能包含静态方法和字段