Java 简单ArrayList.add函数中的NullPointerException?

Java 简单ArrayList.add函数中的NullPointerException?,java,arraylist,nullpointerexception,Java,Arraylist,Nullpointerexception,我又开始习惯java了,并开始尝试使用集合。我有以下非常基本的代码,但我似乎找不到出现Nullpointer异常的原因: import java.util.*; public class Event { private ArrayList<String> fans; public Event() { ArrayList<String> fans = new ArrayList<String>();

我又开始习惯java了,并开始尝试使用集合。我有以下非常基本的代码,但我似乎找不到出现Nullpointer异常的原因:

   import java.util.*;

    public class Event

{
    private ArrayList<String> fans;

    public Event()
    {
        ArrayList<String> fans = new ArrayList<String>();
    }

    public void registerUser(String user)
    {    
        fans.add(user);
    }
}
import java.util.*;
公开课活动
{
私人ArrayList粉丝;
公共活动()
{
ArrayList fans=新的ArrayList();
}
公共无效注册表用户(字符串用户)
{    
fans.add(用户);
}
}
提前谢谢大家

您是构造函数中的类字段。删除数据类型声明

public Event(){
    fans = new ArrayList<String>();
}
公共事件(){
fans=新的ArrayList();
}

您已经在构造函数中初始化了一个本地
fans
,因此您的实例变量
fans
没有被显式初始化,因此它在
registerUser
中仍然是
null

改变

ArrayList<String> fans = new ArrayList<String>();
ArrayList fans=new ArrayList();

fans=newarraylist();
fans = new ArrayList<String>();