猿问

在一个类中创建一个List<Card> hand;然后在构造方法中初始化,在测试中用这个对象调用add()时为什么还会出现空指针异常(自己已经解决啦)

package playing_card;

import java.util.ArrayList;
import java.util.List;

public class Player {
   public int id;
   public String name;
   List<Card> hand;          如果在这里初始化(List<Card> hand = new ArrayList<Card>();)的话调用对象的add()就不会出现空指针异常,这是为什么??Card类已经创建了
   
   public Player(int id, String name) {
       this.id = id;
       this.name = name;
       this.hand = new ArrayList<Card>();
   }
   
   public Player() {
       
   }
}

艾科技
浏览 2594回答 1
1回答

ziom

你的Player类里有两个构造方法,一般都是在无参构造方法里初始化List或者所有的构造方法都初始化,否则你实例化Player的时候就应该调用有参构造方法才不会出现异常吧。。。作为一个Java初学者,以上纯属猜测
随时随地看视频慕课网APP

相关分类

Java
JavaScript
我要回答