하위 클래스 생성자에서 super()의 필요성 이해
Java에서 하위 클래스를 생성할 때 super()가 하위 클래스 생성자에서는 메서드 호출이 필수입니다. 이 기사에서는 이 주제를 자세히 다루며 다음 측면을 명확하게 설명합니다.
컴파일러에 의한 super() 자동 삽입
이 질문에 대한 짧은 대답은 '아니오'입니다. 컴파일러는 명시적으로 지정되지 않은 경우 하위 클래스의 생성자에 super() 호출을 자동으로 삽입하지 않습니다. 따라서 하위 클래스 생성자는 항상 호출하려는 상위 클래스 생성자를 지정해야 합니다.
Non-Existence of No-Args Constructor Equivalents
하위 클래스 생성자의 super() 호출은 컴파일러가 인수 없이 동등한 생성자를 삽입한다는 의미는 아닙니다. 슈퍼클래스에 액세스 가능한 인수 없는 생성자가 없는 경우 super() 호출을 생략하면 컴파일 오류가 발생합니다.
인수가 존재할 때 생성자 호출
인수가 있는 하위 클래스 생성자를 고려해보세요. 이 경우 호출할 슈퍼클래스 생성자를 지정하려면 super() 호출이 필요합니다. 호출되는 슈퍼클래스 생성자는 주로 서브클래스의 생성자에 전달된 실제 인수에 의해 결정됩니다. super() 호출에 인수 목록이 지정되지 않은 경우 하위 클래스 생성 인수의 순서 및 유형과 일치하는 슈퍼클래스 생성자를 호출합니다.
위 내용은 하위 클래스 생성자에서는 'super()'가 필수인가요?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!