1. useNoticeBoard, useuseNoticeBoard, useInformationBoard 메서드와 같이 중복되는 코드를 useBoard메서드를 구현하여 중복 제거
2. 게임 게시판(gameBoard) 클래스 추가
(출력예시)
공지사항 게시판 사용
공지사항 게시판의 글이 정상적으로 추가 되었습니다.
자유 게시판 사용
자유 게시판의 글이 정상적으로 추가 되었습니다.
정보 게시판 사용
자유 게시판의 글이 정상적으로 추가 되었습니다.
게임 게시판 사용
게임 게시판의 글이 정상적으로 추가 되었습니다.
package abstract1.quiz;
public class Main {
public static void main(String[] args) {
NoticeBoard noticeBoard = new NoticeBoard();
FreeBoard freeBoard = new FreeBoard();
InformationBoard informationBoard = new InformationBoard();
useNoticeBoard(noticeBoard);
useuseNoticeBoard(freeBoard);
useInformationBoard(informationBoard);
// TODO 한개의 메서드를 통해 동작 처리
// useBoard(noticeBoard);
// useBoard(freeBoard);
// useBoard(informationBoard);
// useBoard(gameBoard);
}
public static void useNoticeBoard (NoticeBoard noticeBoard) {
System.out.println("공지사항 게시판 사용");
noticeBoard.createBoard();
System.out.println("");
}
public static void useuseNoticeBoard (FreeBoard freeBoard) {
System.out.println("자유 게시판 사용");
freeBoard.createBoard();
System.out.println("");
}
public static void useInformationBoard (InformationBoard informationBoard) {
System.out.println("정보 게시판 사용");
informationBoard.createBoard();
System.out.println("");
}
//TODO 출력예시와 같이 나오도록 아래 메서드 구현(다형적 참조 사용)
public static void useBoard (Board board) {
board.createBoard();
}
}
package abstract1.quiz;
public class Board {
public void createBoard () {
System.out.println("");
}
}
package abstract1.quiz;
public class FreeBoard{
public void createBoard () {
System.out.println("글이 정상적으로 작성되었습니다.");
}
}
package abstract1.quiz;
public class InformationBoard{
public void createBoard () {
System.out.println("글이 정상적으로 작성되었습니다.");
}
}
package abstract1.quiz;
public class NoticeBoard{
public void createBoard () {
System.out.println("글이 정상적으로 작성되었습니다.");
}
}