问答详情
源自:11-2 代码实现

求大佬回答

为什么把父类定义为static之后,在测试类之中调用子类方法执行的全是父类中的方法,而不是重写的方法。

提问者:qq_转身己不在_vCIPV1 2018-11-25 19:10

个回答

  • 家里有只小猫叫旺财
    2019-01-22 16:20:40

    这是为什么静态方法不能被重写的详解https://blog.csdn.net/gao_zhennan/article/details/72892946

  • 家里有只小猫叫旺财
    2019-01-22 16:16:45

    首先,如果一个类要被声明为static的,只有一种情况,就是静态内部类。其次,static作为静态成员变量和成员函数的修饰符,意味着它为该类的所有实例所共享,也就是说当某个类的实例修改了该静态成员变量,其修改为该类的其它所有实例所见。但是重写指的是对实例方法的重写,静态方法已经归属于自身所在的类,不可被重写。

  • 几点起床
    2018-12-26 22:32:00

    public static class HelloWorld {

    }

    我试了一下,直接报错。你是怎么做到的宝贝?

    静态父类只能是内部类

  • qq_慕函数5004952
    2018-11-26 15:37:27

    static是静态,改不了的吧