[Java] 명언 게시판 만들기(6~8단계)
[Java] 명언 게시판 만들기(1~5단계) - 리팩토링[Java] 명언 게시판 만들기(1~5단계)요구사항1단계 - 종료2단계 - 등록3단계 - 등록시 생성된 명언번호 노출4단계 - 등록할때 마다 생성되는 명언번호가
hyemzzi.tistory.com
이번 리팩토링에서는 객체지향적인 방식으로 WiseSaying 클래스를 개선하였다.
1. Getter와 Setter 사용
기존에는 App 클래스에서 WiseSaying의 인스턴스 변수에 직접 접근하였다.
target.id
target.content
target.author
객체의 데이터를 보호하기 위해 인스턴스 변수를 private으로 변경하고, getter와 setter를 사용하도록 수정하였다.
예를 들어, 목록 출력은 다음과 같이 변경된다.
System.out.println("%d / %s / %s"
.formatted(
target.getId(),
target.getAuthor(),
target.getContent()
));
명언 수정도 직접 값을 변경하는 대신 setter를 사용한다.
w1.setContent(sc.nextLine());
w1.setAuthor(sc.nextLine());
2. 생성자 도입
기존에는 WiseSaying 객체를 생성한 후 각 필드에 값을 하나씩 대입하였다.
WiseSaying wiseSaying = new WiseSaying();
wiseSaying.id = ++lastNo;
wiseSaying.content = content;
wiseSaying.author = author;
이를 개선하기 위해 모든 필드를 초기화하는 생성자를 추가하였다.
public WiseSaying(int id, String content, String author) {
this.id = id;
this.content = content;
this.author = author;
}
이제 객체 생성과 동시에 필요한 값을 모두 초기화할 수 있다.
WiseSaying wiseSaying = new WiseSaying(++lastNo, content, author);
객체 생성과 초기화를 한 번에 처리할 수 있어 코드가 더 간결해지고 실수를 줄일 수 있다.
'BackEnd > Java' 카테고리의 다른 글
| [Java] 명언 게시판 만들기 - 리팩토링, Rq 클래스 (0) | 2026.07.21 |
|---|---|
| [Java] 명언 게시판(1~8단계) - 리스트 버전 (0) | 2026.07.20 |
| [Java] 명언 게시판 만들기(6~8단계) (0) | 2026.07.20 |
| [Java] 명언 게시판 만들기(1~5단계) - 리팩토링 (0) | 2026.07.16 |
| [Java] 명언 게시판 만들기(1~5단계) (0) | 2026.07.16 |
댓글