A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

静态内部类内部可不可以定义静态成员啊?   
百度上搜索有两个版本啊  

3 个回复

正序浏览
非静态内部类中不可以定义静态成员。
内部类中如果定义了静态成员,该内部类必须被静态修饰。
回复 使用道具 举报
静态内部类里面可以定义静态的成员。
可以这样理解:
首先你可以把内部类理解成类的成员,成员可以是各种类型的,public private default
所以类可以是各种类型的。
而内部类也是一个类,所以内部可以静态的成员。
例如;
public class Demo {
    int x=3;
    static class Inter{
            static int n=9;
            public void show(){
                    System.out.println(n);
            }
    }
    public static void main(String[]s){
            new Demo.Inter().show();
    }
}结果是:9

希望对你有所帮助!
回复 使用道具 举报
在非静态内部类中不可以声明静态成员,只有将某个内部类修饰为静态类,然后才能够在这个类中定义静态的成员变量与成员方法。后面的自然就很明了...
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马