생성자 메소드와 유사하며 클래스의 객체를 생성할 때 호출되며 일반적으로 클래스의 인스턴스 변수를 초기화하는 데 사용됩니다. 생성자는 클래스와 이름이 같으며 반환 유형이 없습니다.
Java의 기본 생성자는 클래스의 데이터 멤버를 int의 경우 0, double의 경우 0.0과 같은 기본값으로 초기화합니다. 이 생성자는 클래스에 대해 사용자가 구현한 명시적 생성자가 없는 경우 기본적으로 Java 컴파일러에 의해 구현됩니다. .
다음 예를 보면 생성자를 제공하지 않습니다.
public class Sample { int num; public static void main(String args[]){ System.out.println(new Sample().num); } }
위의 프로그램을 컴파일하고 실행하면 기본 생성자는 정수 변수 num을 0으로 초기화하고 결과로 0을 얻습니다.
자바 명령은 클래스의 필드, 생성자 및 메서드에 대한 정보를 표시합니다. (컴파일 후) javap 명령을 사용하여 위의 클래스를 실행하면 아래와 같이 컴파일러에서 추가한 기본 생성자를 관찰할 수 있습니다. -
D:\>javap Sample Compiled from "Sample.java" public class Sample { int num; public Sample(); public static void main(java.lang.String[]); }
예시
public class Sample{ int num; Sample(){ num = 100; } Sample(int num){ this.num = num; } public static void main(String args[]){ System.out.println(new Sample().num); System.out.println(new Sample(1000).num); } }
출력
100 1000