小编whi*_*bit的帖子

泛型和匿名类(错误或功能?)

由于'A'表达式,此代码无法编译.有趣的是:在预期的表达中

List<Foo>
Run Code Online (Sandbox Code Playgroud) 泛型,但得到了
List<anonymous Foo> 
Run Code Online (Sandbox Code Playgroud)(根据编译器).它是一个jdk错误或功能?

 
interface Foo{ void doFoo(); }

public class GenericsTest {

    public static<V> List<V> bar(V v){ return new ArrayList<V>();}

    public static void main(String[] args) {
        List<Foo> f = bar(new Foo(){ //A
            public void doFoo() { }
        }); //don't compiles

        Foo fooImpl = new Foo(){
            public void doFoo() { }
        };

        List<Foo> f2 = bar(fooImpl); //compiles
    }
}
 

java generics

3
推荐指数
1
解决办法
2795
查看次数

标签 统计

generics ×1

java ×1