자바 생성자 튜토리얼

Java Constructor Tutorial



생성자 도구는 객체 지향 프로그래밍에 사용되는 매우 중요하고 유용한 방법입니다. 모든 클래스에 대해 생성자를 반드시 선언해야 하는 것은 아니며, 이 도구는 주로 개체 생성 시 클래스의 개체를 초기화하는 데 사용됩니다. 생성자는 다른 일반 메서드처럼 작동하지 않습니다. 오히려 생성자 도구는 객체가 선언될 때 자동으로 호출되고 객체에 대한 메모리 위치를 할당합니다. 이 튜토리얼에서는 다양한 유형의 사용자 정의 생성자를 Java 클래스 프로그래밍에서 구현하고 사용할 수 있는 방법을 보여줍니다.

생성자의 특징

  1. 생성자의 이름은 클래스 이름과 같아야 합니다.
  2. 반환 유형은 무효입니다.
  3. 생성자는 정적, 추상 및 최종일 수 없습니다.

생성자의 유형







  1. 기본
  2. 매개변수 없는
  3. 매개변수화

1. 기본 생성자

기본 생성자는 코더가 클래스에 대한 생성자를 선언하지 않고 이 생성자가 인수를 포함하지 않을 때 Java 컴파일러에 의해 생성됩니다. Java 파일에는 기본 생성자에 대한 코드가 포함되어 있지 않습니다. 기본 생성자 코드는 Java 코드를 컴파일할 때 생성되며 다음 위치에 저장됩니다. .수업 파일.



2. 매개변수가 없는 생성자

매개변수나 인수 없이 생성자가 선언되면 매개변수가 없는 생성자라고 합니다. 매개변수가 없는 생성자는 기본 생성자처럼 작동하며 이 생성자는 명령문을 포함하거나 비어 있을 수 있습니다.



3. 매개변수화된 생성자

생성자가 하나 이상의 매개변수로 선언되면 매개변수화된 생성자라고 합니다. 생성자의 매개변수 값은 객체 생성 시 전달됩니다.





예제 1: 매개변수가 없는 생성자 생성

다음 코드는 매개변수가 없는 생성자를 사용하는 방법을 보여줍니다. 생성자 메서드 이름은 클래스 이름과 같을 것이라고 앞에서 언급했습니다. 여기서 클래스 이름은 ' 콘1 ,' 따라서 매개변수가 없는 생성자 이름은 ' con1() .' 두 개의 클래스 변수, ' 이름 ' 그리고 ' 나이 ,'를 선언합니다. 객체 변수 선언 시 ' 오브제 ,' 생성자가 호출되고 특정 메시지가 출력됩니다. 그 후, 두 개의 값이 클래스 변수에 할당되고 나중에 다음을 사용하여 인쇄됩니다. '오브제' 물체.

공공의 수업콘1{

// 변수 선언
이름;
정수나이;

//매개변수가 없는 생성자
콘1() {
체계 ..인쇄('생성자가 호출됩니다.');

//변수 초기화
이름= '파힘 레자';
나이= 30;
}

//메인() 메서드
공공의 공전 무효의기본( []인수) {

//객체 생성
콘1 개체= 새로운콘1();

//객체 속성 값 출력
체계 ..인쇄('의 나이 ' +사물이름 + ' 이다 ' +사물나이);
}
}

산출:



다음 이미지는 코드의 출력을 보여줍니다. 생성자는 객체 생성시 호출되고 메시지 생성자가 호출됩니다. 가 인쇄됩니다. '의 가치 이름 ' 그리고 ' 나이 '는 생성자 내부에 할당됩니다. 이 변수의 값은 나중에 인쇄됩니다.

예 2: 매개변수화된 생성자 생성

다음 코드는 기본 급여를 기반으로 직원의 총 급여를 계산하고 계산된 급여와 함께 해당 직원의 다른 정보를 출력합니다. 여기서는 7개의 클래스 변수를 선언합니다. '라는 이름의 생성자 con2() ,'에는 세 개의 매개변수가 있습니다. 처음 두 매개변수는 ' 이름 ' 그리고 ' 우편 ' 매개변수, 세 번째 매개변수는 ' 기초적인 ' 매개변수. 이러한 매개변수의 값은 객체 생성 시 전달됩니다. 생성자는 이 값으로 클래스 변수를 초기화하고 ' 기초적인 ' 매개변수. 다음으로 사원의 이름, 직위, 급여가 출력됩니다.

공공의 수업콘2{

// 변수 선언
이름;
우편;
정수기초적인;
더블하우스렌트;
더블의료;
더블수송;
더블샐러리;

//매개변수화된 생성자
콘2( 이름, 우편,정수기초적인) {
이것.이름 =이름;
이것.우편 =우편;
이것.기초적인 =기초적인;
이것.하우스렌트 =기초적인*0.3;
이것.의료 =기초적인*0.2;
이것.수송 =기초적인*0.1;
샐러리=기초적인+하우스렌트+의료+수송;
}

//메인() 메서드
공공의 공전 무효의기본( []인수) {

//객체 생성
콘2 개체= 새로운콘2('미르 사비르','회계사',65000);

//객체 속성 값 출력
체계 ..인쇄('직원 이름: ' +사물이름 + 'N' + '우편: '+사물우편 +
'N' + ' 급여 : TK '+사물샐러리);
}
}

산출:

다음 이미지는 코드의 출력을 보여줍니다. 여기에서 오브젝트 생성 명세서에 사원의 이름, 직위, 기본급을 기재합니다. 여기에는 총 급여, 이름 및 직위가 인쇄되어 있습니다.

예 3: 생성자 연결 생성

생성자 연결의 개념을 이해하려면 객체 지향 프로그래밍의 상속 기능에 대해 아는 것이 중요합니다. 다른 클래스를 상속받아 새로운 클래스가 생성되는 것을 상속이라고 합니다. 이 경우 부모 또는 기본 클래스의 모든 속성은 자식 또는 파생 클래스에서 액세스할 수 있습니다. 자식 클래스의 객체가 생성되면 자신의 생성자를 호출하기 전에 부모 클래스의 생성자를 자동으로 호출합니다. NS ' 감독자() ' 메서드는 다른 언어에서 부모 생성자를 호출하는 데 사용되지만 Java 컴파일러는 이 메서드를 자동으로 호출합니다. 이러한 방식으로 생성자를 사용하는 것을 생성자 연쇄라고 하며 이 프로세스가 이 예제에 나와 있습니다. 여기서 부모 클래스 이름은 ' 부모의 '이고 자식 클래스 이름은 ' 콘3 .' 라는 또 다른 방법이 있습니다. 결합시키다() '는 부모와 자식 생성자에 할당된 값을 결합한 자식 클래스에 있습니다.

수업부모의{

// 변수 선언
strVal;

//부모 생성자
부모의(){
체계 ..인쇄('부모 생성자가 호출되었습니다');
strVal= '좋아요 ';
}
}

공공의 수업콘3연장하다부모의{

// 변수 선언
childStrVal;

//자식 생성자
콘3(){
체계 ..인쇄('하위 생성자가 호출되었습니다');
childStrVal=strVal+ '자바 프로그래밍';
}

//문자열을 결합하는 또 다른 방법
결합시키다()
{
반품 이것.childStrVal;
}

//메인() 메서드
공공의 공전 무효의기본( []인수) {

//객체 생성
con3 개체= 새로운콘3();
//객체 속성 값 출력
체계 ..인쇄(사물결합시키다());
}
}

산출:

다음 이미지는 코드의 출력을 보여줍니다. 첫 번째 메시지는 부모 생성자에서 인쇄되고 두 번째 메시지는 자식 생성자에서 인쇄됩니다. 마지막 메시지는 ' 결합시키다() ' 방법.

결론

생성자의 개념과 다양한 생성자의 사용은 초보자가 따라할 수 있는 쉬운 Java 코드 예제를 사용하여 이 자습서에서 설명합니다. 이 예제가 Java 생성자의 기본 사항을 이해하는 데 도움이 되었기를 바랍니다.