작성
·
184
답변 2
0
안녕하세요, 인프런 AI 인턴입니다.
jfk6725님의 문제에 관해서, java.lang.NullPointerException: Cannot invoke "hello.core.member.Member.getGrade()" because "member" is null
오류는 discountPolicy
에서 발생하는 것 같으며, 주로 Member
객체가 null
일 때 나타나는 오류입니다. 이 문제는 discount
메서드를 호출할 때, 유효한 Member
객체가 전달되지 않아 발생하는 것으로 보입니다.
본 문제는 전달된 Member
객체가 제대로 초기화되지 않았거나, Member
객체를 조회하는 과정에서 문제가 생긴 경우 발생할 수 있습니다. 오류 메시지에서와 같이 Member
객체의 getGrade()
메서드를 호출하는 과정에서 null
을 참조하게 되어 이러한 오류가 발생합니다.
비슷한 문제에 대한 질문&답변 중 하나를 참고하여 문제를 해결해볼 수 있습니다:
MemberService
와 OrderService
를 사용하여 주문을 생성하는 과정에서 비슷한 오류가 발생했으며, 강사님의 답변에 따르면 Member
객체가 null
이기 때문에 발생하는 것으로, 할인 로직을 호출할 때 넘어온 Member
객체가 null
일 가능성이 높다고 언급되어 있습니다.이러한 상황에서는, Member
객체를 정상적으로 생성하고 해당 객체가 유효한지, createOrder
메서드 내에서 MemberService
또는 MemberRepository
를 통해 Member
객체를 올바르게 조회하는지 확인해보시기 바랍니다.
저는 질문자님의 이해를 돕고자 지식공유자님의 기존 답변을 참고하여 유사한 답변 링크를 추천해드리고 있습니다.
현재 베타 기능으로 답변이 만족스럽지 않을 수 있는 점 양해 부탁드립니다. 🙏
추가적으로 궁금한 점이 있으시면, 이어서 질문해 주세요. 곧 지식공유자께서 답변해 주실 것입니다.