모바일 개발하는 자바리안의 메모장

자바(JAVA) - 생성자(constructor) 본문

Java/Java.study

자바(JAVA) - 생성자(constructor)

자바리안 2016. 8. 4. 14:08
반응형

생성자는 객체를 생성할 때 템플릿 같은 역학을 한다.


원하는 값을 넣으며 객체를 생성한다던지,

자동적으로 어떤 값이 채워지게한다던지,

보다 구체적으로 객체를 생성할 수 있게 도움을 주는 역할을 한다.


public class Car {
	string 이름;
	int 마력;
	int 문개수;
	// 등등

	public Car(){ // 생성자(default)
		이름 = "";
		마력 = 0;
		문개수 = 0; 
	}

	public Car(String name) { // 생성자2
		이름 = name;
		마력 = 10;
		문개수 = 2;
	}


	public static void main(String[] args){
		Car myCar = new Car(); // 생성자(default) 호출
		// [myCar 정보]
		// 이름 : "", 마력 : 0, 문개수 : 0

		Car myCarWithName = new Car("BongBong"); // 생성자2 호출
		// [myCarWithNAme 정보]
		// 이름 : "BongBong", 마력 : 10, 문개수 : 2
	}
}


위 Car class는 2개의 생성자를 가진다. 생성자는 메소드와 비슷하지만, 

생성자만의 2가지 특징을 가진다.

1. 리턴 타입이 없다

2. 클레스와 이름이 똑같다


위 Car 클레스는 2개의 생성자를 갖고있다.


파라미터가 비어있는 생성자가 기본 생성자(default constructor)다.

기본 생성자의 코드를 보면, 3개 인스턴스 변수에 각 "", 0, 0 값을 넣어준다.

인스턴스 변수의 값을 (기본,최소값으로)초기화해주는 역할을 한다 볼 수 있다.


그렇다면 두번째 생성자는 어떨까?

우선 생성자의 파라미터로 String 값을 받는다.

그리고, 받은 값을 Car의 이름에 입력하며,

마력, 문개수를 각각 10, 2로 설정해준다.




반응형
Comments