Java 17 기준으로 제네릭 메서드와 제네릭 인터페이스를 실무 관점에서 설계하는 패턴을 정리하고, 타입 추론 실패·캡처 에러 등 흔한 컴파일 에러 해결법을 예제로 설명합니다. 제네릭을 “컴파일 타임 안전장치”라고는 하는데, 막상 공용 유틸을 만들거나 인터페이스를 설계할 때는 타입 파라미터를 어디에 둬야 할지 헷갈리실 때가 많아요. 특히 incompatible types, capture of ?, cannot infer type arguments 같은 에러가 한 번 나오면, 고치기보다 우회하게 되는 경우도 흔합니다. 이번 글에서는 실무에서 바로 써먹는 제네릭 메서드/인터페이스 패턴과, 자주 만나는 에러의 정석적인 해결법을 정리해 봅니다.핵심 개념: “타입 파라미터를 어디에 두느냐”가 API 품질을 결정합..