JAVA父类的静态方法能否被子类重写? | 您所在的位置:网站首页 › java静态方法会被继承吗 › JAVA父类的静态方法能否被子类重写? |
静态: 在编译时所分配的内存会一直存在(不会被回收),直到程序退出内存才会释放这个空间,在实例化之前这个方法就已经存在于内存,跟类的对象没什么关系。子类中如果定义了相同名称的静态方法,并不会重写,而应该是在内存中又分配了一块给子类的静态方法,没有重写这一说,只是单纯的名字重复了。 父类代码1 public class Fu { 2 public static void show() { 3 System.out.println("父类的静态方法"); 4 } 5 public void method() { 6 System.out.println("父类的一般方法"); 7 } 8 }子类代码public class Zi extends Fu { public static void main(String[] args) { Fu fu = new Zi(); fu.show(); fu.method(); } public static void show() { System.out.println("子类的静态"); } public void method() { System.out.println("子类的一般方法"); } }输出结果是: 父类的静态方法 子类的一般方法 当父类引用指向子类对象,只会调用父类的静态方法,此行为并不具有多态性!只能说明子类能继承父类的静态方法!静态方法与对象无关! |
CopyRight 2018-2019 实验室设备网 版权所有 |