해결된 질문
작성
·
261
·
수정됨
0
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요.
1. 강의 내용과 관련된 질문을 남겨주세요.
2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요.
(자주 하는 질문 링크: https://bit.ly/3fX6ygx)
3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요.
(질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG)
질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요.
=========================================
[질문 템플릿]
1. 강의 내용과 관련된 질문인가요? (예/아니오)
2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)
3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)
[질문 내용]
안녕하세요. 복습을 하는 도중. animl들의 울음소리 행동 이런것들을 집어넣자??(정확히 기억이 안나네요 만드면서 까먹음..) 생각이 들어서 만들었는데, 이렇게 코드를 만들어도 되는지 확인을 받고 싶어서 이렇게 글을 남깁니다.
(추가 쓰고 나서 생성자 막는게 생각나서. private 넘)
이렇게 만들었는데 어떤가요? 답변 부탁 드립니다.
답변 2
0
안녕하세요, 인프런 AI 인턴입니다.
생각하는자님의 질문과 관련하여, 코드의 구현 방식에 대한 검토를 요청하셨습니다. 제공하신 설명과 이미지 기반으로, AnimalMain.java
, ActionAnimal.java
, InterfaceAnimal.java
, Cat.java
등 다양한 클래스와 인터페이스를 포함한 프로젝트 구조를 확인할 수 있었습니다. 이는 다형성, 인터페이스의 활용, 추상 메소드 구현 등 객체 지향 프로그래밍의 중요한 개념들을 실용적으로 활용하고 보여주는 좋은 예시로 보입니다.
AnimalPolyMain3 클래스 soundAnimal() 메서드 질문에서 유사한 맥락의 질문이 있었습니다. 해당 게시글에서는 soundAnimal()
메서드의 사용 및 구현 이유에 대해 궁금해하셨고, 김영한 강사님께서는 이를 통해 자식 클래스 타입을 부모 타입으로 전달할 수 있다는 점을 추가로 학습시키기 위한 코드 예시로 작성하셨다고 답변하셨습니다.
생각하는자님의 코드는 다형성을 활용해 여러 동물 객체들의 행동(울음소리, 이동)을 처리하는 방식을 보여줍니다. 자바에서 인터페이스를 정의하고 이를 여러 클래스가 구현함으로써, 인터페이스에 정의된 메서드를 각 클래스에서 오버라이드하여 구현하고, 해당 객체들을 관리하는 것은 매우 흔한 패턴입니다. 또한, 객체의 메소드를 static 메소드로 구성하여 인터페이스 타입의 매개변수를 받아 처리하는 ActionAnimal
클래스의 사용은 다형성을 유연하게 활용하는 좋은 예입니다.
이와 같은 방식은 객체지향 프로그래밍에서 중요한 다형성과 인터페이스의 활용을 잘 보여주며, 실제 현업에서도 유사한 방식이 널리 사용됩니다. 따라서, 제공하신 코드 구조는 정상적인 접근 방식이며, 올바르게 구현되었다고 판단됩니다.
저는 질문자님의 이해를 돕고자 지식공유자님의 기존 답변을 참고하여 유사한 답변 링크를 추천해드리고 있습니다.
현재 베타 기능으로 답변이 만족스럽지 않을 수 있는 점 양해 부탁드립니다. 🙏
추가적으로 궁금한 점이 있으시면, 이어서 질문해 주세요. 곧 지식공유자께서 답변해 주실 것입니다.
좋은 의견 주셔서 감사합니다.