このコードは適切なベクトルにオブジェクトを追加すると思っていましたが、null ポインター例外が発生しています。Actor a
期待どおりに機能しているため、存在することはわかっactors.add(a)
ています。オブジェクトがインターフェイスを実装しているかどうかをテストする方法を調査しましたが、見つけることができたすべての例は、そのインターフェイスのインスタンスを必要とするメソッドを呼び出す代わりに、インターフェイスのメソッドを呼び出す方法を詳しく説明していました。
public void addActor(Actor a) {
actors.add(a); // actors is a vector
if (a instanceof Drawable) {
panel.addDrawable((Drawable) a);
}
}
そしてパネルで:
public void addDrawable(Drawable d) {
images.add(d); // images is a vector
}