해결된 질문
작성
·
765
1
[질문 템플릿]
1. 강의 내용과 관련된 질문인가요? (예)
2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예)
3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예)
[질문 내용]
가끔 오류날 때 recompile 해보곤 하는데..
G:\spring\spring-data-project\jpashop\src\main\java\jpabook\jpashop\api\MemberApiController.java:
uses unchecked or unsafe operations.
Recompile with -Xlint:unchecked for details.
이게 뭔가하고 찾아보니,
@Data
@AllArgsConstructor
static class Result<T>{
private int count;
private T data;
}
여기 이 부분이..
물론 파란색이라 에러같은 느낌은 아니고, 그냥 안내 정도로 보이긴 하는데,
근데 제가 언뜻 왠만하면 제네릭 쓰지 말라고 들었던거 같긴 한데 기억이.. 잘못들었는지 왜곡되었는지..
옛날 라이브러리들은 제네릭으로 구현된게 많아서 그냥 그거 쓰고 제네릭으로 따로 구현하지 말랬던거 같은데.. 제가 잘못 기억하고 있는 거겠죠?
답변 1
2
안녕하세요. 궁금이님, 공식 서포터즈 코즈위버입니다.
콜렉션처럼 이미 제네릭을 제공하는 경우 외에 직접 제네릭을 사용하는 경우가 흔하지는 않습니다.
다만, 다양한 결과값을 동일한 프로세스로 처리하고 싶다 등등의 경우 제네릭을 활용해야 하는 경우가 종종 있습니다. 예시로 든 코드처럼, 컨트롤러에서 클라이언트에게 항상 동일한 객체로 응답을 하고 싶은 경우 제네릭을 사용하면 편하게 처리할 수 있습니다.
제네릭을 사용할것인가 말것인가를 결정하기 위해선, 제네릭을 도입하여 문제를 해결할 수 있는지? 다른 방법이 있는지 등을 고려하여 결정해야 합니다 :)
감사합니다.