Empty 클래스의 getPossibleMoves() 메소드를 구현한다.
Rook 클래스의 getPossibleMoves() 메소드를 구현한다.
Bishop 클래스의 getPossibleMoves() 메소드를 구현한다.
King 클래스의 getPossibleMoves() 메소드를 구현한다.
Pawn 클래스의 getPossibleMoves() 메소드를 구현한다. 한칸씩 전진.
Pawn이 시작 위치에서 두 칸 이동할 수 있도록 허용할 경우 getPossibleMoves() 메소드를 구현한다.
Knight 클래스의 getPossibleMoves() 메소드를 구현한다.
말(Piece)을 이동할 때 이동하려는 위치의 말의 상태가 Empty인 경우 말을 이동하지 못하도록 한다.
말(Piece)을 이동하려는 목표(target) 위치가 유효하지 않은 위치일 경우 말을 이동할 수 없다.
말(Piece)을 이동하려는 목표(target) 위치에 같은 편 말이 존재할 경우 이동할 수 없다.
말(Piece)이 이동하려는 목표 지점이 말이 이동할 수 없는 목표 지점일 경우 말을 이동할 수 없도록 한다.
PieceOperations interface 작
generateBoard() 부분을 인터페이스로 분