객체 생성과 필드 값 변경
클래스 코드 예
클래스 다이어그램을 통해 코드를 완성하였다면, 이제 객체를 만들 수 있습니다.
/* Dog(개) 클래스 예 */
class Dog {
/* 필드 영역 */
String name; // 이름
double weight; // 무게
/* 메소드 영역 */
void bark() {
System.out.println("멍멍!");
}
}
객체 만들기
위 Dog 클래스의 객체(인스턴스)를 만드는 코드는 아래와 같습니다.
// Dog 객체를 생성
new Dog();
일반적으로는 만든 객체를 다시 사용키 위해, 다음과 같이 변수로 이름을 붙여줍니다.
// 객체 생성 후, dog1 변수에 연결
Dog dog1 = new Dog();
// 비교: 일반 변수
int score = 86;
닷 연산자?
생성된 객체는 연결된 변수에 닷(.) 연산을 함으로써, 접근할 수 있습니다.
// dog1 변수에 연결된 객체에 접근, name 변경.
dog1.name = "멍무이";
// dog1 변수에 연결된 객체에 접근, weight 변경.
dog1.weight = 4.27;
// 필드 값 출력
System.out.printf("이름: %s\n", dog1.name);
System.out.printf("무게: %.2fkg\n", dog1.weight);
문제
네로는 3살 된 페르시안 고양이다. 주어진 코드를 통해 이를 출력하려 한다. 하지만 현재 결과는 아래와 같다.
이름: null
품종: null
나이: 0
객체의 필드 값을 변경하여, 출력 예와 같은 결과를 얻으시오.
출력 예
이름: 네로
품종: 페르시안
나이: 3