创建对象的数组列表

时间:2012-09-24 02:22:30

标签: java

我有两个A和B类.B扩展A.现在,在B中,我可以创建一个A对象的数组列表。


public class A {

      // class fields
      // class methods  
}

import java.util.*;

public class B extends A {

List<Object> listname=new ArrayList<Object>();

A obj=new A();
listname.add(obj);
 }

我可以创建一个对象的数组列表吗?顺便说一句,上面的代码给出了错误!

3 个答案:

答案 0 :(得分:4)

是的,我认为没有理由不能创建对象A的ArrayList。

但是你不能按照你的方式去做,你必须在方法中做到这一点。您正尝试在字段声明中执行此操作。

尝试在构造函数中添加它吗?

类似

public B() {
A obj=new A();
listname.add(obj);
}

或许我只是不明白你的问题,我完全错了。

答案 1 :(得分:2)

错误是因为您的代码之外。试试这个:

public class B extends A {

    private static List<Object> listname = new ArrayList<Object>();

    public static void main(String[] args) {
        A obj = new A();
        listname.add(obj);
    }
}

答案 2 :(得分:1)

如果要在任何方法之外的列表中添加项目,请使用实例初始值设定项:

public class B extends A{
    private List<A> listOfA = new ArrayList<A>();

    {
         listOfA.add(new A());
    }

    public B(){
    }   
}