java - 如何用内部类填充 Arraylist?

标签 java inner-classes

这是我的主课:

import java.util.ArrayList;
public class MainClass {
    public static void main(String[] args){
        ArrayList<SecondClass.InnerClass> list=new ArrayList<SecondClass.InnerClass>();
        list.add(new SecondClass.InnerClass()); //error here (read below)
    }
}       

这是第二堂课:

public class SecondClass {
    public class InnerClass{

    }
}

MainClasslist.add 处,我收到此错误:

No enclosing instance of type SecondClass is accessible. Must qualify the allocation with an enclosing instance of type SecondClass (e.g. x.new A() where x is an instance of SecondClass).

我需要使 InnerClass 非静态,因为 InnerClass 需要对非静态方法进行静态引用。如何在 ArrayList 中添加元素?

最佳答案

我认为你需要:

new SecondClass().new InnerClass()

关于java - 如何用内部类填充 Arraylist?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26303569/

相关文章:

java - 为什么 Tomcat 在 catalina.out 日志文件中将我的日志行加倍?

java - 方法本地内部类在 Java 中有什么好处?

java - GC 多久执行一次?

java - 两天的 hibernate 训练应该包括什么

c++嵌套策略模式,纯虚拟错误

java.lang.NoClassDefFoundError : in anonymous inner class 错误

java - 彩票程序忽略功能

java 。在内部回调中获取同步数据

java - 我怎样才能让javac搜索类路径的子目录?

java - 记录一起工作的多个 OSGi 包