본문으로 바로가기
package constructor;

public class PersonTest {

	public static void main(String[] args) {

		Person personKim = new Person();
		personKim.name = "김유신";
		personKim.weight = 85.5F;
		personKim.height = 180.0F;
		
		Person personLee = new Person("이순신", 175, 75);

	}

}

위 예제는 디폴트 생성자를 사용하는 경우와 매개 변수가 있는 생성자를 사용한는 두 가지 경우를 보여줍니다. 6~8행을 보면 디폴트 생성자를 사용하는 경우는 클래스를 생성한 후 인스턴스 변수 값을 따로 초기화합니다. 하지만 10행처럼 매개변수가 있는 생성자를 사용함녀 생성자 내부에서 변수를 초기화할 수 있도록 구현되어 있으므로 코드도 간결하고 사용하기 편리합니다. 

어떤 멤버 변수들은 6~8행처럼 외부 클래스에서 값을 지정하지 못하는 경우도 있습니다. 따라서 매개 변수가 이있는 생성자를 구현하고 이를 상춍하는 것이 편리한 경우가 많습니다.