【发布时间】:2016-03-31 06:11:15
【问题描述】:
所以我现在正在度假,没有电脑。但是...不能停止思考代码。完全着迷。无论如何,我现在不能自己测试这个,所以在这里询问这是否可行:
public <T> void foo(T t){
doSomething(T.class);
}
我对类型擦除一无所知,但从来没有这样想过。在这种情况下,T 将是传递给此方法的实际对象,因此,由于泛型在运行时使用的隐式转换,T 的实际类类型是否会在运行时传递给 doSomething?还是 T 本质上只是 Object 的事实是否会破坏这一点?
【问题讨论】:
-
这不是一个重复的问题,OP 在问为什么这不起作用,他提供了一个不同的例子。此外,他并没有像其他问题那样要求解决方法!我没有重新打开权限,但这不能标记为重复
标签: java generics type-erasure