У меня есть класс, который содержит два массива, в которые я пытаюсь сохранить объекты, по одному для каждого типа объекта. В моем основном классе я вставляю объекты так:
for (int i =0; i < 3; i++)
{
Cat cat = new Cat("meow",i);
Dog dog = new Dog("woof",i);
objList.addCat(cat);
objList.addDog(dog);
}
Мой класс ObjectList (objList) настроен так:
import java.util.ArrayList;
public class ObjectList {
public ArrayList cats;
public ArrayList dogs;
public ObjectList()
{
this.cats = new ArrayList();
this.dogs = new ArrayList();
}
public void addCat(Cat c)
{
this.cats.add(c);
}
public void addDog(Dog d)
{
this.dogs.add(d);
}
}
Я получаю java.lang.NullPointerException
начиная с линии objList.addCat(cat);
. Я распечатал свойства объектов cat прямо перед этой строкой, и оба значения, кажется, установлены. Я попытался проверить, могу ли я просто передать int в свой addCat arrayList, но у меня возникла та же ошибка, поэтому я предполагаю, что неправильно использую arraylist в своем классе. Есть ли в моем коде ошибка, которая очевидна?