인프런 커뮤니티 질문&답변

Kevin님의 프로필 이미지
Kevin

작성한 질문수

그림으로 배우는 자바, 파트2: 객체지향!

리뷰! 기사 돈키호테

질문있습니다.

작성

·

125

0

public class KnightTest {
public static void main(String[] args) {
// 객체 생성
Knight knight = new Knight("돈키호테",30);

System.out.println("[객체 생성]");
System.out.printf("Knight { name: %s, hp: %d }\n",knight.getName(), knight.getHp());
knight.setHp(30);
System.out.println("[체력 증가 +30]");
System.out.printf("Knight { name: %s, hp: %d }",knight.getName(), knight.getHp());


}
}

class Knight {
// 필드
private String name;
private int hp;
// 생성자
public Knight(String name, int hp){
this.name=name;
this.hp = hp;
}
// 게터
public String getName(){
return this.name;
}
public int getHp(){
return this.hp;
}
//// 세터
//public void setName(String s){
// name = s;
//}
public void setHp(int n){
hp += n;
}
}



///이런식의 코드도 괜찮은걸까요?? 뭔가 toString()메서드를 만들어서 return을 해서 그값을 출력하는것보다
이게 더 와닿아서 게터세터에만 의존해서 출력을 하였는데. 어떤 방법이 좋은건지 궁금해서 그리고 왜 더 좋은지가 궁금해서
질문드립니다

답변 1

1

홍팍님의 프로필 이미지
홍팍
지식공유자

무엇이 더 좋은지에 대한 구분은
다양한 상황을 고려해야 합니다.

강의 코드에서는
여러 개념을 배우는데
목적을 두었기 때문에

게터와 세터 뿐만 아니라
나중에 배울 toString() 메소드를
활용하였습니다.

제시 코드 또한
배운 개념을 복습하는 차원에서
좋은 코드가 되겠습니다. 👍

Kevin님의 프로필 이미지
Kevin

작성한 질문수

질문하기