我有以下课程:
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;
}
Run Code Online (Sandbox Code Playgroud)
我想在另一个类中实例化它,但该类不理解Suit枚举.我应该把枚举放在哪里让它公开显示?
Jor*_*orn 29
Suit枚举在Card类中,您必须以这种方式访问它:
new Card(Card.Suit.SPADES, 1);
Run Code Online (Sandbox Code Playgroud)
或者,您可以从Card中导入Suit类,并直接访问它:
import my.package.Card.Suit;
new Card(Suit.SPADES, 1);
Run Code Online (Sandbox Code Playgroud)
另一种选择是按照伯特的建议将西服放入自己的班级.
Ber*_*t F 22
把西装放在自己的班级:
Suit.java:
public enum Suit
{
SPACES, HEARTS, DIAMONDS, CLUBS
}
Run Code Online (Sandbox Code Playgroud)
枚举已经可见了.
Card card = new Card(Card.Suit.CLUBS, 5);
Run Code Online (Sandbox Code Playgroud)
将实例化一张新卡.
不相关......但你可能想让太空服套装成黑桃套装.:)