hlking123
2011-11-02 14:55
浏览 310
已采纳

使用内部类时,编译提示限定的新静态类

class OutClass{
static class InnerClass{
String s1 = "这是内部类的实例属性";
InnerClass(){
System.out.println("创建内部类对象!");
}

    void innerTest(){
        System.out.println("这是内部类的test方法!");
    }
}   

void accessInner(){
    System.out.println(new InnerClass().s1);

}

}

class InnerClassAccess{
public static void main(String[] args){
OutClass oc = new OutClass();
oc.new InnerClass().innerTest();

}

}

编译时提示限定的新静态类,请问如何正确访问静态内部类中的非静态方法?

  • 点赞
  • 写回答
  • 关注问题
  • 收藏
  • 邀请回答

2条回答 默认 最新

  • 爱上一条鱼 2011-11-02 15:09
    已采纳

    class OutClass {
    static class InnerClass {
    String s1 = "这是内部类的实例属性";

        InnerClass() {
            System.out.println("创建内部类对象!");
        }
    
        void innerTest() {
            System.out.println("这是内部类的test方法!");
        }
    }
    
    void accessInner() {
        System.out.println(new InnerClass().s1);
    
    }
    

    }

    class InnerClassAccess {
    public static void main(String[] args) {
    OutClass.InnerClass ic = new OutClass.InnerClass();
    ic.innerTest();

    }
    

    }

    点赞 评论
  • 爱上一条鱼 2011-11-02 15:11

    静态内部类new的时候不需要外部类的实例的

    点赞 评论

相关推荐 更多相似问题