2017-09-25 1 views
3

콜렉션이 인터페이스와 구현으로 빌드 될 수 있도록 일반 리턴 유형을 가질 수 있습니다.콜렉션의 일반 리턴 유형

public static void main(String[] args) { 
    List<Test1> list = ImmutableList.of(new Test1()); 
    List<ITest> test_return_1 = buildIntRange(list); 
    List<Test1> test_return_2 = buildIntRange(list); //error 
} 

private static <K extends ITest> List<ITest> buildIntRange(List<K> test) { 
    return ImmutableList.copyOf(test); 
} 

답변

4

확실히. ImmutableList.copyOf과 동일한 서명을 사용하거나 직접 ImmutableList.copyOf을 사용하십시오.

static <T> List<T> copyOf(Iterable<? extends T> collection)