質問: public enum Suit { DIAMONDS, CLUBS, HEARTS, SPADES } public enum Rank { ACE, TWO, THREE, FOUR, FIVE, SIX, SEVEN, EIGHT, NINE, TEN, JACK, QUEEN, KING } と public interface Card { public Rank getRank(); public Suit getSuit(); public boolean isJoker(); // the following are not named in interfaces, typically, since they're assumed // public boolean equals(Object o); // public String toString(); } を同じファイル(Card.java)に保存したいのですが、以下のエラーが発生します。 Card.java:1: エラー: 列挙 Suitはpublicであり、ファイルSuit.javaで宣言する必要があります。 public enum Suit { ^ Card.java:5: エラー: 列挙 Rankはpublicであり、ファイルRank.javaで宣言する必要があります。 public enum Rank { ^ エラー2個 それぞれ別のファイルに保存するしかないのでしょうか。TAの先生には、同じファイルに保存してと言われたのですが、、、
回答: 単一ファイルに収めるなら、列挙体の可視性をpublicにしなければ良いです。 実際にエラーメッセージからもそう読み取れるはずですが。