我想弄清楚如何在不同的类中使用枚举来扩展一个通用的抽象类。抽象类中的枚举
简单的例子:
卡类
public class Card {
private String name;
private String value;
private String suit;
public Card(String name, String value, String suit) {
this.value = value;
this.suit= suit;
}
}
摘要DECK类
public abstract class Deck {
private enum SUITS{
}
private enum VALUES{
}
private int cardNumber;
private ArrayList<Card> cardList;
public Deck(VALUES valori,SUITS semi){
ArrayList<Card> clist = new ArrayList<>();
for (SUITS s: semi.values()){
for (VALUES v: valori.values()){
cardList.add(new Card(v.toString(),s.toString()));
}
}
cardNumber = cardList.size();
}
类BriscolaDeck
public class CarteBriscolaDeck extends Deck {
private enum SUITS{
COPPE,
DENARE,
BASTONI,
SPADE
}
private enum VALUES{
ASSO,
DUE,
TRE,
QUATTRO,
CINQUE,
SEI,
SETTE,
FANTE,
CAVALLO,
RE
}
public CarteBriscolaDeck(){
super(VALUES,SUITS);
}
}
类PokerDeck
public class PokerDeck extends Deck {
private enum SUITS{
SPADES,
HEARTS,
DIAMONDS,
CLUBS
}
private enum VALUES{
ACE,
TWO,
THRRE,
FOUR,
FIVE,
SIX,
SEVEN,
EIGHT,
NINE,
TEN,
JACK,
QUEEN,
KING
}
public PokerDeck(){
super(VALUES,SUITS);
}
}
我这样做对吗?有没有可能优化?
预先感谢您。
提示:请让我知道我的答案是否适合您;或者如果有什么你会寻找;否则考虑接受最适合的答案来表明“你有你需要的东西”。 – GhostCat