인프런 영문 브랜드 로고
인프런 영문 브랜드 로고

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

작성자 없음

작성자 정보가 삭제된 글입니다.

스프링 핵심 원리 - 기본편

주문과 할인 도메인 개발

오류

해결된 질문

작성

·

241

·

수정됨

0

주문과 할인 도메인 개발 강의에서 아래와 같이 작성하였는데요.

 

package hello.core.order;

import hello.core.discount.DiscountPolicy;
import hello.core.discount.FixDiscountPlicy;
import hello.core.member.Member;
import hello.core.member.MemberRepository;
import hello.core.member.MemoryMemberRepository;

public class OrderServiceImpl implements OrderService {

    private final MemberRepository memberRepository = new MemoryMemberRepository();
    private final DiscountPolicy discountPolicy = new FixDiscountPolicy();

    @Override
    public Order createOrder(Long memberId, String itemName, int itemPrice) {
        Member member = memberRepository.findById(memberId);
        int discountPolicy = discountPolicy.discount(member, itemPrice);

        return new Order(memberId, itemName, itemPrice, discountPolicy);
    }

    public DiscountPolicy getDiscountPolicy() {
        return discountPolicy;
    }
}

 

int discountPolicy = discountPolicy.discount(member, itemPrice);

이 부분에서 변수 discountPolicy가 초기화되지 않았을 수 있습니다. 라는 오류가 뜹니다.

 

실제 이 부분 때문에 실행이 안되는데요.

인터페이스를 초기화할 수 없어서 그런거 아닌가요..?

저만 안되나요..?

답변 4

0

해야지님의 프로필 이미지

삭제된 글입니다

OMG님의 프로필 이미지

image프로젝트 코드 확인해보았습니다.

위의 두 개 라인에서
discountPolicy 를 discountPrice로 변경하시면 해결 됩니다.

discountPolicy란 이름으로 int 변수명과 DiscountPolicy인스턴스 명을 공유해서 발생한 현상이였습니다.

강의에서는 discountPrice란 변수명을 사용했습니다.

0

해야지님의 프로필 이미지

삭제된 글입니다

OMG님의 프로필 이미지

링크 접속이 안됩니다. 아래를 참고하여 링크있는 사용자가 볼 수 있도록 설정을 변경하셔야 합니다

image

image

0

해야지님의 프로필 이미지

삭제된 글입니다

OMG님의 프로필 이미지

코드 일부만 봐서는 확인이 어려울 것 같아 실행가능한 프로젝트의 공유를 요청드렸습니다.

이전 댓글을 참고하여 프로젝트 폴더를 압축하여 업로드 후 링크를 공유해주시면 확인 후 답변드리겠습니다.

0

OMG님의 프로필 이미지

안녕하세요. 현현님, 공식 서포터즈 OMG입니다.

도움을 드리고 싶지만 질문 내용만으로는 답변을 드리기 어렵습니다.

실제 동작하는 전체 프로젝트를 압축해서 구글 드라이브로 공유해서 링크를 남겨주세요.

구글 드라이브 업로드 방법은 다음을 참고해주세요.

https://bit.ly/3fX6ygx


주의: 업로드시 링크에 있는 권한 문제 꼭 확인해주세요


추가로 다음 내용도 코멘트 부탁드립니다.

1. 문제 영역을 실행할 수 있는 방법

2. 문제가 어떻게 나타나는지에 대한 상세한 설명


링크: 공식 서포터즈

링크: 자주하는 질문

감사합니다.

작성자 없음

작성자 정보가 삭제된 글입니다.

질문하기