산업 제조
산업용 사물 인터넷 | 산업자재 | 장비 유지 보수 및 수리 | 산업 프로그래밍 |
home  MfgRobots >> 산업 제조 >  >> Industrial programming >> java

자바 - 생성자

생성자는 객체가 생성될 때 객체를 초기화합니다. 클래스와 이름이 같으며 구문적으로 메서드와 유사합니다. 그러나 생성자에는 명시적인 반환 유형이 없습니다.

일반적으로 생성자를 사용하여 클래스에 의해 정의된 인스턴스 변수에 초기 값을 제공하거나 완전히 형성된 개체를 만드는 데 필요한 다른 시작 절차를 수행합니다.

Java는 모든 멤버 변수를 0으로 초기화하는 기본 생성자를 자동으로 제공하기 때문에 정의 여부에 관계없이 모든 클래스에는 생성자가 있습니다. 그러나 자신만의 생성자를 정의하면 기본 생성자는 더 이상 사용되지 않습니다.

구문

다음은 생성자의 구문입니다 -

class ClassName {
   ClassName() {
   }
}

Java는 두 가지 유형의 생성자를 허용합니다. 즉 -

인수 생성자 없음

이름이 인수 없음을 지정하므로 Java의 생성자는 대신 매개변수를 허용하지 않으므로 이러한 생성자를 사용하면 메서드의 인스턴스 변수가 모든 개체에 대해 고정된 값으로 초기화됩니다.

Public class MyClass {
   Int num;
   MyClass() {
      num = 100;
   }
}

다음과 같이 생성자를 호출하여 개체를 초기화합니다.

public class ConsDemo {
   public static void main(String args[]) {
      MyClass t1 = new MyClass();
      MyClass t2 = new MyClass();
      System.out.println(t1.num + " " + t2.num);
   }
}

이렇게 하면 다음과 같은 결과가 나타납니다.

100 100

매개변수화된 생성자

대부분의 경우 하나 이상의 매개변수를 허용하는 생성자가 필요합니다. 매개변수는 메소드에 추가되는 것과 같은 방식으로 생성자에 추가되며 생성자 이름 뒤의 괄호 안에 선언하면 됩니다.

다음은 생성자를 사용하는 간단한 예입니다 -

// A simple constructor.
class MyClass {
   int x;
   
   // Following is the constructor
   MyClass(int i ) {
      x = i;
   }
}

다음과 같이 객체를 초기화하기 위해 생성자를 호출합니다 -

public class ConsDemo {
   public static void main(String args[]) {
      MyClass t1 = new MyClass( 10 );
      MyClass t2 = new MyClass( 20 );
      System.out.println(t1.x + " " + t2.x);
   }
}

이것은 다음과 같은 결과를 낳을 것입니다 -

10 20

java

  1. C++ 생성자
  2. 자바 연산자
  3. 자바 주석
  4. 자바 for-each 루프
  5. 자바 생성자
  6. 자바 문자열
  7. 자바 인터페이스
  8. 자바 리소스 사용
  9. 자바 주석
  10. 자바 어설션