제네릭 메서드와 타입 추론 예제가 실행되는 순서
인자 위치에서 후보 타입 수집에서 시작해 목표 타입에 맞는 결과 반환까지 값과 책임이 이동한다.
-
1
인자 위치에서 후보 타입 수집
static T first(List values)처럼 메서드가 사용할 타입 변수를 먼저 소개합니다.
-
2
같은 T 위치의 제약 결합
대부분 호출에서는 을 직접 쓰지 않아도 List 인자로 T가 결정됩니다.
-
3
목표 타입에 맞는 결과 반환
두 인자와 반환에 같은 T를 쓰면 서로 호환되는 타입만 전달할 수 있습니다.
실행 순서 first는 호출한 List의 원소 타입을 그대로 반환해 String과 Integer 호출에서 각각 다른 T를 추론합니다.