我有以下课程:
public class Card
{
public enum Suit
{
SPACES, HEARTS, DIAMONDS, CLUBS
};
public Card(Suit nsuit, int nrank)
{
suit = nsuit;
rank = nrank;
}
private Suit suit;
private int rank;
}
我想在另一个类中实例化它,但该类不理解Suit
枚举。我应该把枚举放在哪里公开显示?
答案 0 :(得分:29)
Suit枚举位于Card类中,您必须以这种方式访问它:
new Card(Card.Suit.SPADES, 1);
或者,您可以从Card中导入Suit类,并直接访问它:
import my.package.Card.Suit;
new Card(Suit.SPADES, 1);
另一种选择是按照伯特的建议将西服放入自己的班级。
答案 1 :(得分:21)
将西装放在自己的班级中:
Suit.java:
public enum Suit
{
SPACES, HEARTS, DIAMONDS, CLUBS
}
答案 2 :(得分:6)
枚举已经可见。
Card card = new Card(Card.Suit.CLUBS, 5);
将实例化一张新卡片。
无关......但你可能想让太空服套装成黑桃套装。 :)
答案 3 :(得分:-4)
Suit
枚举位于Card
类中,您必须以这种方式访问它:
Card.Suit suit = Card.Suit.CLUBS;