Java 尝试为向量添加元素()时的NPE

Java 尝试为向量添加元素()时的NPE,java,vector,nullpointerexception,element,add,Java,Vector,Nullpointerexception,Element,Add,这是我所有权类别的一部分。它没有编译错误,但当我尝试使用其他类运行并输入正确的输入时,它在addOwner()的addElement()行上给了我一个NPE,我不知道为什么。我确信,所有者不是问题所在,输入也不是问题所在。我尝试在一个较小的项目中初始化一个向量,然后列出它的内容,它也给了我一个NPE。基本上,我需要知道如何向OwnerList添加一个新的Owner对象,而不会得到NullPointerException谢谢 import java.util.*; import j

这是我所有权类别的一部分。它没有编译错误,但当我尝试使用其他类运行并输入正确的输入时,它在addOwner()的addElement()行上给了我一个NPE,我不知道为什么。我确信,所有者不是问题所在,输入也不是问题所在。我尝试在一个较小的项目中初始化一个向量,然后列出它的内容,它也给了我一个NPE。基本上,我需要知道如何向OwnerList添加一个新的Owner对象,而不会得到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;
       }
   }
import java.util.*;
导入java.io.*;
公共类所有权实现可序列化
{
私有向量所有者;
私有向量表;
公有制
{
ownerList=新向量();
petList=新向量();
}
公共布尔addOwner(字符串b)
{
所有者r=新所有者();
r=所有者parser.parseStringToOwner(b);
所有者列表补遗(r);
返回true;
}
}
您的默认“构造函数”有一个
void
返回值,因此它不是一个构造函数,而是一个普通的方法,名为构造函数。因此,永远不会调用“构造函数”,也永远不会初始化向量


public void Ownership(){…}
更改为
public Ownership(){…}
,它将起作用。

在讨论异常时,请提供堆栈跟踪
Owner r
可以为空,或者在你的情况下,
ownerList
可以为
null
。我觉得自己像个白痴。现在一切正常。给我双面手掌