inflearn logo
강의

Course

Instructor

Java TPC (Think, Express, Code)

상속 관련 질문입니다.

195

gain2145069

7 asked

0

강사님 안녕하세요.
상속 관련된 내용을 보다가 설명하시는 부분 중에 이해가 안가는 부분이 있어서 문의드립니다.
Dog 클래스는 내용을 알수가 없기 때문에 부모 클래스인 Animal 클래스가 리모콘 역할을 하여 부모클래스를 통해
자식 클래스의 메서드(동작)에 접근한다.
 
상속의 기본 개념이니 내용을 모르는 것은 아니지만,
 
Dog.class 파일의 경우 소스파일인 Dog.java를 건드릴 수 없고 그로 인해 클래스가 어떻게 설계되어 있는 것인지 확인이 안되는 것일텐데
상속을 받기 위해서는 부모 클래스를 제가 생성한다고 하더라도 자식 클래스에 해당하는 Dog.java 소스파일과 Cat.java 소스파일은
수정을 해야 하는 것이잖아요 ?
 
그리고 오버라이딩 설명 주신 것도 저는 오히려 반대로 생각한게 Animal 클래스를 임의로 작성을 한다 한들 실제로 자식 클래스의 내용을 모르면 자식 클래스의 메서드를 핸들링 못하고, 부모 클래스의 내용을 정확히는 모르더라도 자식클래스에서 오버라이딩을 통해 임의로 구현을 할 수 있다.
 
라고 생각하는데요.
 
tv 와 리모콘의 예시가 인터페이스와 실제 구현 클래스라고 하면 이해가 가는데, 부모 클래스 자식 클래스 예시가 조금은 헷갈리네요.
보충 설명 부탁드려도 될까요 ?
 
감사합니다.
 
 

oop java

Answer 1

0

bitcocom

네 상속 구현은 개발자가 만들고  만들어진 것을 사용자가 쓰는것입니다. 그렇기 때문에 설계자는 Dog와 Animal에 동작 구성을 다 알고있는 사람이 상속의 구조를 설계를 하겠죠?

그렇게 설계된 것을 사용하는 사람의 입장에서는 Dog의 동작 방식을 몰라도 Animal의 동작 방식만 알고있으면 Dog를 동작 시킬수가 있다는 원리입니다. 이렇게 할려면 Dog와 Animal을 자식과 부모관계로 상속을 만들고 Animal의 동작을 Dog가 재정의를 했다는 전제조건이 필요합니다.

이것을 좀더 쉽게 설명한것이 TV와 리모콘 설명일것입니다. 이해가 조금되셨을까요?

인프런 자바 강의 보고있는데요. 질문.

0

172

1

질문입니다

0

241

1

call by reference 관련 자바는 call by value방식만 존재하지 않나요?

0

963

1

ArrayLIst에 대해서 궁금합니다

0

375

1

자바버전

0

607

1

오버로딩 생성자

0

455

1

안녕하세요

0

349

1

문자열 String 에 대해 질문이 있습니다.

1

562

1

선생님 질문있습니다.

0

358

1

인강 강의내용

0

451

1

static 멤버 사용

0

429

1

강사님 추상메소드에서 전달하는 매개변수도 재정의 할때 반드시 구현하는건가요?

0

429

1

강사님 abstract 부분 궁금한점 있습니다!!

0

322

1

강사님 private 관련해서 궁금한점 있습니다!

0

339

1

45강 실습관련 질문드립니다

0

358

2

완강했습니다!!

0

368

1

Class생성시 관련하여 질문드립니다

0

235

1

안녕하세요 IDE관련해서

0

353

1

String관련 질문입니다

0

291

1

추상클래스 질문!

0

284

1

Wrapper 클래스란?(실습) 프로젝트에서

0

586

1

java 11로 해도 되나요?

0

435

1

궁금한 게 있습니다.

0

291

1

Java의 Call by Reference

0

263

1