본문 바로가기

SpringBoot

10월2일 Spring Boot Order 객체 (다형성)

Order VO

 

OrderService

-order의 추상화 클래스

 

orderServiceImpl

-위의 OrderService를 구현한 클래스

 

Order VO 안에 이전에 만든 MemberRepository를 불러와서 사용하게 되는데

MemberRepository memberRepository = new MemoryMemberRepository();

MemoryMemberRepository는 MemberRepositroy를 상속받아서 만든 객체 즉 MemberRepository의 자식 이라고 할 수 있다,

이는 만약 OrderVO가 MemberRepositort 를 요구하고 있는것이기 때문에 이를 상속받아 만들어진 MemoryMemberRepository를 받을 수 있는 것으로 MemoryMemberRepository이외에도 같은 부모 MemberRepository를 속받아  만들어진 객체라면 뭐든지 받을 수 있다 . 

이게 다형성 이다.

 

같은 맥락으로

(원하는 부모객체 인터페이스) (객체명) = new (부모객체 자체 혹은 부모객체 인터페이스를 상속받아 만들어진 자식객체)(); 

의 형태로 받을 수 있다는 것이다.