생성자?
인스턴스화 한 오브젝트인 class() 생성자로 인스턴스를 생성하는 명령어
class name =new class() 를 실행할 때 클래스를 접근하게 되면서 사용하게 된다.
이 때 생성자 메소드를 호출하면서 클래스는 힙 영역에 할당되고 자동으로 초기화를 시켜준다.
결국 생성자는 클래스를 힙 영역에 할당하고 초기화를 해주는 작업을 하는 메소드이다.
생성자는 보통 기본 생성자와 필드 생성자로 나뉜다.
기본 생성자
클래스가 호출될 때 가장 먼저 생성자를 확인하는데 생성자를 명시하지 않았으면 자동으로 생성되어
클래스를 초기화 작업을 수행하게 되는데 이 때 컴파일은 클래스 구성 요소들을 차례대로 읽어 초기화를 수행한다.
생성자를 명시하지않고 자동으로 호출할 경우 인스턴스에 필요한 요소들을 읽어 초기화 작업을 수행한다.
하지만 생성자를 명시하여 호출할 경우 컴파일은 그 생성자로 클래스를 초기화 하게 된다.
생성자를 명시해 이 생성자로 클래스를 초기화 시키게 함.
필드 생성자
1.필드 생성자는 저장된 데이터를 멤버 변수에 저장하거나 호출하는 역할을 한다.
2.필드 생성자는 기본생성자에 멤버 변수를 매개 변수로 지정함.
3.필드 생성자는 매개 변수의 리스트만 다르면 같은 클래스에서 여러 번 작성이 가능하다.
4.필드 생성자는 매개 변수 리스트에 따라 변경하여 사용 가능하므로 오버로딩 생성자라고도 한다.
5.필드 생성자에서 같은 이름의 매개변수와 멤버변수를 사용하기위해 this 지정어를 사용한다.
필드 생성자 선언
필드 생성자 호출
매개변수 값의 순서는 필드 생성자에서 지정한 매개변수의 순서에 맞춰야한다.
필드 생성자는 매개 변수의 리스트만 다르면 같은 클래스에서 여러 번 작성이 가능하다.
명시되지 않은 멤버변수의 값은 기본값으로 초기화.
'프로그래밍 > JAVA' 카테고리의 다른 글
[Java] 쓰레드의 상태와 제어 (0) | 2023.11.14 |
---|