Java에서는 하위 클래스의 생성자를 실행하기 전이나 하위 클래스가 명시적으로 생성자를 지정하지 않은 경우 상위 클래스의 매개변수 없는 생성자가 자동으로 호출됩니다.
(동영상 튜토리얼 추천: java 강좌)
super의 세 가지 사용 사례:
부모 클래스 메서드에서 재정의된 메서드에 액세스합니다.
상위 클래스 생성자를 호출합니다.
상위 클래스의 숨겨진 멤버 변수에 액세스하세요.
샘플 코드:
class A{ int a; A(){ a = 3; System.out.println(a); } void dosomething(){ System.out.println("A"); } } class B extends A{ int a; B(){ a = 5; System.out.println(a); } void dosomething(){ super.dosomething(); System.out.println("B"); } }
(추천 튜토리얼: Java 입문 튜토리얼)
메인 메소드에서 실행했을 때
B b = new B(); b.dosomething();
출력 결과:
3 5 A B
부모 클래스의 생성자 메소드는 서브 클래스에 상속될 수 없습니다. 하위 클래스만 자신만의 생성자를 사용할 수도 있고 인수가 없는 기본 생성자를 사용할 수도 있습니다.
상위 클래스가 매개변수가 있는 생성자를 정의하고 하위 클래스가 매개변수가 없는 생성자를 정의하면 컴파일러가 자동으로 super()를 추가하고 오류가 발생합니다. (부모 클래스에는 해당하는 매개변수 없는 생성자가 없습니다)
위 내용은 Java에서 super 키워드의 사용법은 무엇입니까의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!