이렇게 코드를 수정한 뒤 다시 실행하면 앞에서와 같은 결과가 나옵니다. Truck의 생성자가 호출될 때 부모의 생성자도 자동으로 호출된다는 것을 기억하세요. 나를 가리키는 키워드가 this였다면 부모를 가리키는 키워드는 super라는 것도 잊지 마세요.
자, 여기서 한 가지 궁금한 것이 생깁니다. 내가 직접 호출하지 않아도 컴파일러가 자동으로 호출해주는데, 이 키워드를 알아야 할 이유는 무엇일까요?
이유를 알아보기 위해 코드를 약간 수정하겠습니다. 먼저 Truck 클래스의 super 키워드 부분을 잠시 주석으로 처리하겠습니다.
package javaStudy;
public class Truck extends Car {
public Truck() {
// super();
System.out.println("Truck의 기본 생성자입니다.");
}
}