gpt4 book ai didi

java - 尝试为 Vector 添加元素()时的 NPE

转载 作者:行者123 更新时间:2023-12-02 07:10:49 24 4
gpt4 key购买 nike

这是我的所有权类(class)的一部分。它没有编译错误,但是当我尝试与其他类一起运行并输入正确的输入时,它在 addOwner() 的 addElement() 行给了我一个 NPE...我不知道为什么。 OwnerParser 不是问题,我确信,输入也不是问题。我尝试在一个较小的项目中初始化一个 Vector,然后列出它的内容,它也给了我一个 NPE。基本上我需要知道如何将新的 Owner 对象添加到 OwnerList 而不会出现 NullPointerException 谢谢。

    import java.util.*;
import java.io.*;

public class Ownership implements Serializable
{
private Vector<Owner> ownerList;
private Vector<Pet> petList;

public void Ownership()
{
ownerList = new Vector<Owner>();
petList = new Vector<Pet>();
}

public boolean addOwner(String b)
{
Owner r = new Owner();
r = OwnerParser.parseStringToOwner(b);
ownerList.addElement(r);
return true;
}
}

最佳答案

您的默认“构造函数”具有 void 返回值,因此不是构造函数,而是一个普通方法,其命名类似于构造函数。因此,“构造函数”永远不会被调用, vector 也永远不会被初始化。

public void Ownership() {...} 更改为 public Ownership() {...} 并且它将起作用。

关于java - 尝试为 Vector 添加元素()时的 NPE,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15542825/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com