작성
·
379
0
안녕하세요 회원 서비스 테스트 강의 듣다가 이해 안가는 부분이 있어서 질문드립니다
12:11 에서
MemoryMemberRepository memberRepository = new MemoryMemberReposiory();
이 코드를 왜 작성해야하는지 이해가 안갑니다.
clearStore()를 할거면 그냥 위에 적힌 memberService.memberRepository.clearStore(); 로 해도 같은 기능을 하는 코드가 아닌가요?
그리고 memberService.memberRepository를 사용하면 하나의 회원repository instance만 사용하므로
회원 서비스 코드를
public class MemberService{
private final MemberRepository memberRepository;
public MemberService(MemberRepository memberRepository){
this.memberRepository = memberRepository;
}
}
위와 같이 작성하지 않아도 되는거 아닌지 궁금합니다
답변 2
0
memberService.memberRepository.clearStore();
이렇게 할 수 없는 이유는 memberRepository에 접근할 수 없기 때문인 것 같아요
MemberService 클래스 보시면 memberRepository 변수는 private라서 외부에서 접근할 수 없으니까요
저도 이 부분 궁금해서 코드 살펴보다가 알아냈는데
제 생각이에요
0
안녕하세요. 한조님, 공식 서포터즈 OMG입니다.
memberService.memberRepository.clearStore();
해당 코드가 실행이 되지 않을 것 같은데요, 이렇게 코드가 실행이 된다면 강의와 다르게 작성하신 부분이 있을거 같아요. 생각하신대로 코드를 작성하여 코드와 실행결과도 공유해주시면 어떤 부분에 대해 말씀드려야 할지 명확해질거같습니다.
그리고 마찬가지로 memberService.memberRepository를 사용하도록 코드 구성을 어떻게 하였는지 MemberService코드와 memberService.memberRepository에 대한 코드를 작성하여 주세요.
감사합니다.