English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية

Java 기본 가이드

Java 흐름 제어

Java 배열

Java 언어 지향 객체(I)

Java 언어 지향 객체(II)

Java 언어 지향 객체(III)

Java 예외 처리

Java 리스트(List)

Java Queue(큐)

Java Map 집합

Java Set 집합

Java 입력 출력(I/O)

Java Reader/Writer

Java 다른 주제

Java 프로그램 생성자에서 다른 생성자 호출

Java 예제 전체

이 예제에서 Java에서 생성자에서 다른 생성자를 호출하는 방법을 배웁니다.

이 예제를 이해하기 위해 다음을 이해해야 합니다:Java 프로그래밍주제:

예제1Java 프로그램에서 생성자에서 다른 생성자 호출

class Main {
  int sum;
  //첫 번째 생성자
  Main() {
    //두 번째 생성자 호출
    this(5, 2);
  }
  //두 번째 생성자
  Main(int arg1, int arg2) {
    //두 값을 더하는
    this.sum = arg1 + arg2;
  }
  void display() {
    System.out.println("총 합: " + sum);
  }
  // main 클래스
  public static void main(String[] args) {
    // 첫 번째 생성자 호출
    Main obj = new Main();
    // 显示方法 호출
    obj.display();
  }
}

출력 결과

총 합: 7

위의 예제에서 Main이라는 클래스를 생성했습니다. 여기서 Main 클래스 내부에서 두 개의 생성자를 생성했습니다.

Main() {..}
Main(int arg1, int arg2) {...}

첫 번째 생성자에서 this 키워드를 사용하여 두 번째 생성자를 호출했습니다.

this(5, 2);

여기서, 매개변수를 전달하여 5 와 2 첫 번째 생성자에서 두 번째 생성자 호출

주의생성자에서 다른 생성자 호출하는 줄은 해당 생성자의 첫 번째 줄이어야 합니다. 즉, this(5, 2)는 Main()의 첫 번째 줄이어야 합니다.

예제2부모 클래스의 생성자 호출

super()를 사용하여 자식 클래스의 생성자에서 부모 클래스의 생성자를 호출할 수 있습니다.

// 부모 클래스
class Languages {
  //부모 클래스의 생성자
  Languages(int version1, int version2) {
    if (version1 > version2) {
      System.out.println("최신 버전은: " + version1);
    }
    else {
      System.out.println("최신 버전은: " + version2);
    }
  }
}
//서브클래스
class Main extends Languages {
  //서브클래스 생성자
  Main() {
    //슈퍼클래스 생성자 호출
    super(11, 8);
  }
  // main 메서드
  public static void main(String[] args) {
    // 첫 번째 생성자 호출
    Main obj = new Main();
  }
}

출력 결과

최신 버전은: 11

위의 예제에서 우리는 Languages이라는 슈퍼클래스와 Main 서브클래스를 생성했습니다. Main 클래스의 생성자에서 주목해야 할 다음과 같은 행을 주목해 주세요:

super(11, 8);

여기서 우리는 서브클래스( Main() )의 생성자에서 슈퍼클래스의 생성자를 호출합니다(즉 Languages(int version1,int version2))。

Java 예제 전체