簡體   English   中英

如何在Java中創建Card類的實例

[英]How to create instance of Card class in Java

我是Java的新手,我對類的語法工作方式有些迷惑。 我有以下課程:

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

public class Card {

    public final Face face;
    public final Suit suit;
    private boolean visible;

    public enum Face {
    TWO(2), THREE(3), FOUR(4), FIVE(5), SIX(6), SEVEN(7), EIGHT(8), NINE(
                                         9), TEN(10), JACK(10), QUEEN(10), KING(10), ACE(11);

    private int value;

    Face(int value) {
        this.value = value;
    }

    public int getValue() {
        return this.value;
    }
    }

    public enum Suit {
    CLUB, DIAMOND, HEART, SPADE;
    }

    public Card(Face face, Suit suit){
    this.face = face;
    this.suit = suit;

    }

    @Override
    public boolean equals(Object o){
    if(!(o instanceof Card)) return false;
    if(this == o) return true;

    return this.toString().equals(o.toString());
    }



    public String toString(){
    return this.face.name() + this.suit.name();

    }

    private static final List<Card> protoDeck = new ArrayList<Card>();
    static {
    for (Suit suit : Suit.values())
        for (Face face : Face.values())
        protoDeck.add(new Card(face, suit));
    }

    public static ArrayList<Card> newDeck() {
    return new ArrayList<Card>(protoDeck); // Return copy of prototype deck
    }

    public boolean isVisible() {
    return this.visible;
    }

    public void setVisible(boolean b){
    this.visible = b;
    }

}

如何創建此類的實例? 例如,我將如何創建一個由5個心組成的卡片?

像這樣:

 new Card(Card.Face.FIVE, Card.Suit.HEART)

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM