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

좋은 백조님의 프로필 이미지
좋은 백조

작성한 질문수

스프링 핵심 원리 - 기본편

관심사의 분리

선생님 질문있습니다.

작성

·

134

0

좀 벗어난 자바의 기본기 질문입니다....ㅜㅜ

아래 2번코드 해시맵에 대해서 왜 static 으로 선언해주는지 잘 모르겠습니다. 

static은 객체를 만들필요 없이 쓸수있는 변수인데 의존관계 주입으로 구현체를 주입받은 경우에는 1번코드의  memberRepository 가 객체로 취급되는게 아닌가요? 그러면 static이 없어도 쓸 수 있는 것아닌가요? 해보니까 static 없이는 쓸 수가 없어서 질문드립니다... 그리고 private static 가 정확히 뭘 의미하는지 모르겠습니다. 분명 같은 클래스내부에서만 쓸수있는 private 와 외부에서 객체생성없이 쓸 수 있는 static 이 같이 쓰인다는게 말이 안되는거 같습니다...

public Order createOrder(Long memberId, String itemName, int itemPrice) {
Member member= memberRepository.findById(memberId);
int discountPrice = discountPolicy.discount(member, itemPrice);
private static Map<Long, Member> store = new HashMap<>();

답변 1

0

김영한님의 프로필 이미지
김영한
지식공유자

안녕하세요. 010님

static은 자바의 가장 중요한 기본 문법이기 때문에 먼저 이 부분을 따로 확실하게 학습을 하시기를 추천합니다.

감사합니다.

좋은 백조님의 프로필 이미지
좋은 백조

작성한 질문수

질문하기