>我正在尝试创建一个将某个对象添加到继承对象数组中的方法。
public class Biblio {
Biblio[] Tab; static int i=0;
Biblio();
void insert(Biblio O){Tab[i]=O;i++;}}
在主类中,我创建了 3 个相互扩展的类对象:表示文档从 Biblio 扩展,文章从文档扩展,书籍从文章扩展。
public class TestBiblio {
public static void main(String[] args) {
Document A= new Document();
Article B= new Article();
Book C= new Book();
Biblio D= new Biblio();
D.insert(A);
D.insert(B);
D.insert(C);}}
一旦我运行代码,我在线程"main"java.lang.NullPointerException错误中得到异常。我是Java的初学者,我找不到帽子出错了。
您从未初始化过用于插入的数组。当您执行 Tab[i] 时,您正在取消引用空指针。有类似的东西
public class Biblio {
Biblio[] Tab;
static int i=0;
public Biblio() {
Tab = new Biblio[5];
}
void insert(Biblio O){
Tab[i]=O;i++;
}
}