内部类中不能使用静态的变量和静态的方法,这句话今天刚听到的时候感觉没毛病,但是,内部类中也不一定不能使用静态的变量,我们可以通过添加final 的方法的来使用,内部类中静态的方法是不能使用的
看下面的代码
提示错误了,具体提示如下 内部类不能有静态声明
我们添加final 这样就可以编译通过了,这个原因是把静态的变量变成静态的常量了,
内部中不能使用静态的方法这个是一定的如下 无论是否添加final 都会提示报错的
内部类中不能使用静态方法的原因分析:
内部类的实例化是由外部类实例化之后才加载的,如果外部类还没有实例化,这时候调用内部类的静态成员,此时内部类还没有被加载,却要开始创建静态成员,显示是不合理的,
所以内部类中不能使用静态方法