Java 创建实例后程序失败

Java 创建实例后程序失败,java,eclipse,constructor,Java,Eclipse,Constructor,基本上,我必须创建一个程序,创建一个CatManager实例,然后打印出Done!。当我这么做的时候,程序失败了。我想给构造函数添加一些东西,但我不知道是什么。我的代码如下: import java.util.ArrayList; public class CatManager { private ArrayList<Cat> myCats; CatManager Finish = new CatManager(); System.out.println(

基本上,我必须创建一个程序,创建一个CatManager实例,然后打印出Done!。当我这么做的时候,程序失败了。我想给构造函数添加一些东西,但我不知道是什么。我的代码如下:

import java.util.ArrayList;

public class CatManager
{
    private ArrayList<Cat>  myCats;
    CatManager Finish = new CatManager();
    System.out.println("Done");

    public CatManager() {
        Cat cat = new Cat("Fifi", "black");
        myCats.add(cat);
        cat = new Cat("Fluffy", "spotted");
        myCats.add(cat);
        cat = new Cat("Josephine", "tabby");
        myCats.add(cat);
        cat = new Cat("Biff", "tabby");
        myCats.add(cat);
        cat = new Cat("Bumpkin", "white");
        myCats.add(cat);
        cat = new Cat("Spot", "spotted");
        myCats.add(cat);
        cat = new Cat("Lulu", "tabby");
        myCats.add(cat);
    }

    public void add(Cat aCat) {

    }
}
问题是您没有初始化ArrayList,必须在向其中添加一些对象之前进行初始化。您只需将其作为第一行添加到构造函数:

myCats = new ArrayList<Cat>();

无论构造函数中包含什么,此程序都将失败。CatManager的每个实例中都有一个CatManager实例,其中有一个CatManager实例,它有一个。。。等等