结论
JAVA的静态方法形式上可以重写,但是本质上不是JAVA的重写,所以答案是不能。
为什么
静态方法只与类有关,不与实例有关,重写只适用于实例方法,不适用于静态方法。
非静态方法,按重写规则,调用相应的类的实现方法,而静态方法只与类有关。
因为静态方法是程序一运行就已经分配好了内存地址,而且该地址是固定的,所有引用到该方法的对象(父类或者子类)所指向的始终是同一个内存地址中的数据,即该静态方法。如果子类定义了相同名称的静态方法,只会新增一个内存地址,并不会重写。
JAVA的静态方法形式上可以重写,但是本质上不是JAVA的重写,所以答案是不能。
静态方法只与类有关,不与实例有关,重写只适用于实例方法,不适用于静态方法。
非静态方法,按重写规则,调用相应的类的实现方法,而静态方法只与类有关。
因为静态方法是程序一运行就已经分配好了内存地址,而且该地址是固定的,所有引用到该方法的对象(父类或者子类)所指向的始终是同一个内存地址中的数据,即该静态方法。如果子类定义了相同名称的静态方法,只会新增一个内存地址,并不会重写。