Java 抽象类中未使用的实例变量
我的抽象类及其子类有问题Java 抽象类中未使用的实例变量,java,class,oop,abstract-class,Java,Class,Oop,Abstract Class,我的抽象类及其子类有问题ActionDeck是Deck的一个子类,它包含ActionDeck的无参数构造函数,但每当我为deque和array list实例变量获取NullPointerException时,我的超类就拥有它。它还在VScode中将其标记为未使用。我不确定我是否正确地实现了它。我的代码有什么问题 Deck.java abstract class Deck<C> { protected Deque<C> deck; protected Ar
ActionDeck
是Deck
的一个子类,它包含ActionDeck
的无参数构造函数,但每当我为deque和array list实例变量获取NullPointerException
时,我的超类就拥有它。它还在VScode中将其标记为未使用。我不确定我是否正确地实现了它。我的代码有什么问题
Deck.java
abstract class Deck<C> {
protected Deque<C> deck;
protected ArrayList<C> temp;
public Deck () {
Deque<C> deck = new ArrayDeque<>();
ArrayList<C> temp = new ArrayList<>();
}
非常感谢您的帮助,谢谢 Deck构造函数没有初始化成员-它声明了两个隐藏成员并初始化它们的局部变量。删除这些行上的类型声明,您将获得预期的行为:
public Deck () {
deck = new ArrayDeque<>();
temp = new ArrayList<>();
}
公共甲板(){
甲板=新的ArrayDeque();
temp=新的ArrayList();
}
组构造函数没有初始化成员-它声明了两个隐藏成员并初始化它们的局部变量。删除这些行上的类型声明,您将获得预期的行为:
public Deck () {
deck = new ArrayDeque<>();
temp = new ArrayList<>();
}
公共甲板(){
甲板=新的ArrayDeque();
temp=新的ArrayList();
}
请包含引发实际异常的generateDeck()
方法的代码。请包含引发实际异常的generateDeck()
方法的代码。哦,我完全错过了!非常感谢,它又起作用了。哦,我完全错过了!非常感谢,它又起作用了。
public Deck () {
deck = new ArrayDeque<>();
temp = new ArrayList<>();
}