-
카테고리
-
세부 분야
프로그래밍 언어
-
해결 여부
해결됨
섹션 12. 다형성과 설계 예제 관련 질문
24.06.04 10:31 작성 24.06.04 10:36 수정 조회수 75
0
안녕하세요.
<다형성과 설계-문제와 풀이> 강의를 듣는 중에 의문이 생겨 문의드립니다.
수업 내용에 따라 Sender 클래스는 인터페이스로 작성된 상태입니다.
사진과 같이 "Sender[] senders = "로 배열을 생성하여도, 배열 안의 값들은 Sender형이 아닌 각각 EmailSender, SmsSender, FaceBookSender형으로 생성이 되는 건가요?
만약 Sender형으로 인스턴스가 생성이 된다면, 인터페이스는 인스턴스를 생성할 수 없기 때문에 NullPointerException이 발생해야 할 것 같아서요.
답변 부탁드립니다. 감사합니다.
답변을 작성해보세요.
1
y2gcoder
2024.06.04
안녕하세요. S.F.님, 공식 서포터즈 y2gcoder입니다.
사진과 같이 "Sender[] senders = "로 배열을 생성하여도, 배열 안의 값들은 Sender형이 아닌 각각 EmailSender, SmsSender, FaceBookSender형으로 생성이 되는 건가요?
=> 말씀하신 부분이 맞습니다. 그 뒤에 말씀하신 것과 같이 인터페이스는 인스턴스를 생성할 수 없기 때문입니다!
각 요소들의 생성자에서 사용한 타입의 인스턴스로 생성된다고 이해하시면 될 것 같습니다!
배열이 추가되었으나 어렵게 생각하실 필요 없이 저희가 이전 시간에 배웠던 것과 똑같습니다
감사합니다.
답변 1