강의

멘토링

커뮤니티

Inflearn Community Q&A

280265484's profile image
280265484

asked

(2026) Pass the Information Processing Engineer Practical Exam in Just One Week

Inheritance and Constructor Call Order

기본생성자

Resolved

Written on

·

230

0

자식클래스 메서드 실행 시 부모 호출 후 메서드 실행된다고 하셨습니다.

10:32에 super가 없기 때문에 기본인 Car()이 실행되는데,

무조건 위치 상 맨 위에 있는 것이 기본인 것인가요?

예를들어

맨위에 Car(String model)

밑에 Car(String model, int year)가 있으면

Car(Stirng model)이 호출되는 것인가요

pythonjavac정보처리기사

Answer 2

0

7:30에 출력값 보면 3번째줄 부모에 start출력되고 부모에stop은 출력이 왜 안될까요,,? start만 츌력되는 이유 궁금해요

weekendcode님의 프로필 이미지
weekendcode
Instructor

start는 자식이 재정의하지 않아서 부모 것이 호출되고,

stop은 자식이 재정의해서 자식 것이 사용됩니다.

0

weekendcode님의 프로필 이미지
weekendcode
Instructor

"자식클래스 메서드 실행 시 부모 호출 후 메서드 실행된다고 하셨습니다."

-> 잘못된 표현입니다. 메서드는 부모와 상관 없습니다.(재정의의 개념만 적용) 10:32에 있는 Car, ElectricCar는 메서드가 아닙니다. 생성자입니다. 클래스 이름과 이름이 같은 메서드는 생성자라고 불러주셔야 합니다. 일반 메서드가 호출되기 전에 부모를 부르거나 이런 것은 없습니다.

 

그리고 super()라는 키워드는 코드 상에 가장 상위에 있어야 실행됩니다. 이건 업캐스팅 영상에서 예시로 하나 넣어두었을 겁니다. 그 영상을 꼭 한 번 봐주세요. 시험 빈출이라서 또 나올 수도 있습니다.

 

이해에 도움이 되셨을까요?

280265484's profile image
280265484

asked

Ask a question