-1

この Java コードは機能するはずですが、エラーが発生します。

no main classes found. 

「public static void main」クラスが特にないことは知っていますが、ここでは必要ありませんよね?NetBeans IDE を使用しています。

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

  private int cardValue;

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

  public int getCardValue() {
    return cardValue;
  }
}

public enum Suit
{
  HEARTS,
  SPADES,
  CLUBS,
  DIAMONDS;
}

public class Card
{
  private Suit suit;
  private Face cardValue;

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

  public Suit getSuit()
  {
    return suit;
  }

  public void setSuit(Suit suit)
  {
    this.suit = suit;
  }

  public Face getCardValue()
  {
    return cardValue;
  }

  public void setCardValue(Face cardValue)
  {
    this.cardValue = cardValue;
  }
}

import java.util.ArrayList;
import java.util.Collections;
import java.util.Iterator; 

public class DeckofCards
{
  private ArrayList<Card> deck;

  public DeckofCards ()
  {
    this.deck = new ArrayList<>();
    for (int i=0; i<13; i++)
    {
      Face value = Face.values()[i];

      for (int j=0; j<4; j++)
      {
        Card card = new Card(value, Suit.values()[j]);
        this.deck.add(card);
      }
    } 

    Collections.shuffle(deck);

    Iterator<Card> cardIterator = deck.iterator();
    while (cardIterator.hasNext())
    {
      Card aCard = cardIterator.next();
      System.out.println(aCard.getCardValue() + " of " + aCard.getSuit());
    }
  }
}
4

3 に答える 3

6

mainこのコードを実行するには が必要です。mainこれはコンパイルされますが、JVM はコードの実行を「開始」する場所がわからないため、a を追加するまで実行できません。

于 2013-07-26T00:53:19.887 に答える