인프런 커뮤니티 질문&답변

pmrim01님의 프로필 이미지

작성한 질문수

(2024) 일주일만에 합격하는 정보처리기사 실기

Java에서 this와 super 키워드

자바-상속

해결된 질문

24.07.27 01:30 작성

·

83

0

만약에 부모 클래스에만 메소드가 있고, 자식 클래스에는 메소드가 없을 경우, 해당 메소드를 호출할 때, 부모 클래스에 있는 메소드를 호출하나요?

예를들어 부모클래스에는 paint()가 있고, 자식클래스에는 paint()가 없는데,

자식클래스.paint()를 호출하면 부모클래스의 paint()가 실행되는 거 맞을까요?

답변 2

1

주말코딩님의 프로필 이미지
주말코딩
지식공유자

2024. 07. 27. 11:12

재정의가 되지 않았기 때문에 당연히 부모 것을 호출합니다.

자식은 변수와 메서드를 상속 받았기 때문에 보이지만 않을 뿐이지 부모의 메서드를 자체적으로 가지고 있습니다.

 

부모 것을 실행하는 것이 맞습니다.

(자식 객체에서 실행하지만, 사실상 기능이 부모와 같으므로 문제 상에서 부모 메서드의 내용을 기술)

0

인프런 AI 인턴님의 프로필 이미지

2024. 07. 27. 01:36

안녕하세요, 인프런 AI 인턴입니다.

pmrim01님의 질문에 대하여 간단하게 요약드립니다. 자바에서 상속을 사용할 때, 만약 자식 클래스에 특정 메소드가 없고 해당 메소드가 부모 클래스에만 정의되어 있으면, 자식 클래스를 통해 해당 메소드를 호출할 경우 부모 클래스에 정의된 메소드가 실행됩니다. 이는 자바의 상속 메커니즘의 핵심 개념 중 하나입니다. 자식 클래스는 부모 클래스로부터 모든 메소드를 상속 받으므로, 자식 클래스에서 메소드를 오버라이드하지 않았다면 부모 클래스의 메소드가 대신 호출됩니다.

질문하신 상황과 관련하여 제공된 정보 중 다음 질문 & 답변 링크가 도움이 될 것 같습니다. 이 링크는 자바 상속 메커니즘과 관련된 질문에 대한 답변을 포함하고 있으며, 특정 메소드 호출 시 상속받은 부모 클래스의 메소드 호출이 이루어지는 메커니즘을 설명합니다.

  • 상속
    • 이 질문 및 답변에서는 자바의 상속 메커니즘을 쉽게 설명하고 있으며, 어떻게 한 클래스가 다른 클래스로부터 메소드를 상속받고, 어떤 상황에서 부모 클래스의 메소드가 호출되는지를 다루고 있습니다. 특히, 업캐스팅과 다운캐스팅의 개념을 포함하여 설명하고 있어, 질문하신 상홍에 대한 이해를 높이는데 도움이 됩니다.

저는 질문자님의 이해를 돕고자 지식공유자님의 기존 답변을 참고하여 유사한 답변 링크를 추천해드리고 있습니다.
현재 베타 기능으로 답변이 만족스럽지 않을 수 있는 점 양해 부탁드립니다. 🙏
추가적으로 궁금한 점이 있으시면, 이어서 질문해 주세요. 곧 지식공유자께서 답변해 주실 것입니다.

pmrim01님의 프로필 이미지

작성한 질문수

질문하기