인프런 커뮤니티 질문&답변

볼빵빵오춘기님의 프로필 이미지

작성한 질문수

스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술 > 회원 서비스 테스트

작성

·

221

0

'스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술'
강의에서 '회원서비스 테스트 ' 강의 보면서 따라 하고 있는데요. ㅜㅜ
똑같이 쓴다고 썼는데 왜 에러가 나는지 모르겠어요.
 
사진 첨부합니다. ㅜㅜ
scr > main > java > hello > hellospring > service > MemverService 를 하고
이거를 테스트하기 위해
test 디렉터리 쪽에 MemberServiceTest.java 쪽에서
처음에
MemberService memberService = new MemberService();
MemoryMemberRepository memberRepository = new MemoryMemberRepository();
이렇게 넣었다가
 
MemberService memberService;
MemoryMemberRepository memberRepository;

@BeforeEach
public void beforeEach(){
memberRepository = new MemoryMemberRepository();
memberService = new MemberService(memberRepository);
}
변경하면서
 
전강의 MemberServic.java에서
만든 부분을
 
private final MemoryMemberRepository memberRepository;

public MemberService(MemberRepository memberRepository){
this.memberRepository = memberRepository;
}
변경했는데요.
 
MemberServic.java 에 빨간줄이 뜨면서
Incompatibe types.Found 이렇게 뜨더라구요.
인터넷 검색도 해보고 했는데 아직 잘 모르는 상태라 왜 에러가 났는지 잘모르겠어서
알고계신분들 답변 부탁드립니다.
 
 
 

답변 1

0

MemberService.java 의 memberRepository 선언부분을

private final MemberRepository memberRepository 로 수정해보세요.

하위 타입의 참조변수가 상위 타입의 인스턴스를 참조할 수 없습니다.

해결됐습니다. 답변 감사합니다.