- 父类的静态方法能否被子类重写?
父类静态方法可被子类继承,但不能被子类重写。因为静态方法在类加载的时候就分配好了内存,若子类存在和父类同名的静态方法,会重新分配内存给子类的静态方法。
Demo测试:
public class IODemo {
public static void test() {
System.out.println("父类静态方法");
}
}
public class Demo extends IODemo {
public static void main(String[] args) {
test();
}
//public static void test() {
// System.out.println("子类静态方法");
//}
}
若将子类的静态方法注释掉,则子类调用的test()为父类test()的打印信息,放开注释,则打印子类方法信息。