首页 > 编程语言 > 详细

java中父类的静态方法不能被重写

时间:2016-07-23 00:45:20      阅读:310      评论:0      收藏:0      [点我收藏+]

Java中父类的静态方法确实不能被重写的,但是有的人可能去做实验发现在子类中去重写父类static方法时,并没什么问题。这里我来具体解释下。

public class Parent {

public static void add(){
   System.out.println("=========Parent");
}
}

public class Children extends Parent {

public static void add(){
   System.out.println("=========Children");
}

}

上面两个类并没发现在系统中报错,并通过测试

public static void main(String[] args) {
  Children ch new Children();

//Parent ch new Children();
   ch.add();
}

上面的测试可以执行通过;但是大家注意红色标注部分,问题就在这里,这两句引用的实例都是new Children();如果静态方法能被重写,这两句执行结果应该都为"=========Children“,但是事实不是这样,两句都是各自调用各自的方法。所以说静态方法并没被重写,两者的方法各自独立。

java中父类的静态方法不能被重写

原文:http://www.cnblogs.com/doudouxiaoye/p/5697628.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!