【发布时间】:2015-09-09 00:02:04
【问题描述】:
我创建了一个模拟普通扑克牌的类 Card。在这个类中,我们将创建一个 toString() 方法来返回卡片的字符串表示形式。我们还必须创建另一个名为 CardTestDriver 的类来打印特定的卡片。我已经为这些类编写了代码,但是当我运行它时,什么都没有打印出来。我不确定出了什么问题,如果有人能看到错误在哪里会有所帮助吗?一切都在编译,但没有打印。这也是我第一次使用枚举类型,所以也许我做错了什么?帮助将不胜感激!
这是我的卡片类:
public class Card{
public enum Suit {
CLUBS, DIAMONDS, HEARTS, SPADES;
}
public enum Rank {
ACE, ONE, TWO, THREE, FOUR, FIVE, SIX, SEVEN, EIGHT,
NINE, TEN, JACK, QUEEN, KING
}
public enum Status {
FACEUP, FACEDOWN
}
final Rank rank;
final Suit suit;
final Status status;
public Card (final Rank rank, final Suit suit, final Status status)
{
this.rank = rank;
this.suit = suit;
this.status = status;
}
public String toString()
{
return rank + " " + suit + " " + status;
}
}
这是我的 CardTestDriver.java 类
public class CardTestDriver{
public void main(String[] args) {
new Card (Card.Rank.SEVEN,Card.Suit.SPADES,Card.Status.FACEDOWN);
System.out.println(toString());
}
}
【问题讨论】:
-
尝试打印卡片的实际实例,
System.out.println(new Card (Card.Rank.SEVEN,Card.Suit.SPADES,Card.Status.FACEDOWN));... -
我试过了,但它不起作用 - 已编译,但没有打印出来
-
为我打印
SEVEN SPADES FACEDOWN就好了 -
@onay - 问题可能是主方法缺少“静态”声明。你在开这个班吗?如果是这样,必要的方法签名是
public static void main(String[] args)。 -
是的,我也尝试过,但结果相同,没有打印出来
标签: java