我正在尝试将此图转换为java代码,以便了解可以提出的设计问题。
例如,我将写为
的Piecetype枚举public enum PieceType{
pawn, king, queen, rook, bishop, knight
}
我想知道是否有人可以提供有关如何将类图转换为java代码的指导,只是简单地采用图中显示的类之一并编写java中提到的属性和方法。
我大部分时间都很难搞清楚+和 - 。
答案 0 :(得分:4)
+
和-
指的是公开程度:
Symbol Visibility ------ ---------- + Public - Private # Protected / Derived (can be combined with one of the others) _ Static
(source)
答案 1 :(得分:1)
首先,您应该学习如何在尝试使用Java实现它之前正确读取类图。 +
和-
定义了类成员的可见性(例如字段或方法)。 +
表示公共可见类成员,而-
表示私有成员,即只能从定义它的类访问。
转换为Java类(Game
)的示例:
public class Game {
private List<Move> playedMoves;
private PieceColor turn;
private Players[] players;
private Result result;
private CheckStatus checkStatus;
public Game() {
playedMoves = new ArrayList<Move>(); // create empty list
// TODO initialize other fields properly
}
public void addMove(Move move) {
playedMoves.add(move);
}
public boolean isCheckmated() {
return CheckStatus.BlackCheckmated.equals(checkStatus) ||
CheckStatus.WhiteCheckmated.equals(checkStatus);
}
// TODO add other methods
}
<强>参考文献:强>