자바/스프링입문객체지향
[4단원]생성자
OverTheHorizon3410
2023. 8. 28. 22:56
생성자
- 자바에서 객체를 생성시
new
키워드를 사용함
- 클래스명 뒤에 나오는 괄호
()
는 메서드를 의미
- 이를
생성자
라고 부른다.- 해당 생성자는 클래스가 인스턴스화될 때 초기 설정을 도와준다.
기본 생성자
- 자바에서 클래스에 아무런 생성자를 정의하지 않는다면
기본 생성자를 자동으로 제공한다.
- 실제 작성한 코드
public class 동물 { }
자바 컴파일단계
에서 기본 생성자 주입public class 동물 { public 동물() {} }
인자가 있는 생성자
- 필요에 따라 인자를 받는 생성자도 추가 가능합니다.
public class 동물 { public 동물(String name) { System.out.println(name); } }
동물 뽀로로 = new 동물("뽀로로");
로 호출가능
주의
- 인자가 있는 생성자가 하나라도 정의되어있다면, 자바 컴파일러는 더 이상 기본 생성자를 자동으로 만들어주지 않는다.
동물 무명 = new 동물(); // 에러!
수행시 인자가 없는 생성자가 없기에 당연히 컴파일 단계에서 에러가 발생한다.
- 이러한 경우에는 기본 생성자를 명시적으로 추가해주어야 한다.
생성자라고 줄여서 부르지만, 정확하게는 객체 생성자 메서드
이다.
메서드! 메서드!
Uploaded by N2T