BBYR Achieve
返回信息流
这是一条镜像帖。来源:北邮人论坛 / java / #54291同步于 2016/12/12
该镜像源已超过 30 天没有更新,可能在源站已被删除。
Java机器人发帖

请教一个泛型不可变的问题

ljq661
2016/12/12镜像同步2 回复
泛型不是不可变的吗,为什么这种写法能编译通过 private static List<Object> IDENTITY_FUNCTION = new ArrayList<Object>(); public static <T> List<T> identityFunction() { return (List<T>) IDENTITY_FUNCTION; }
订阅后,新回复会通过你的通知中心匿名送达。
2 条回复
liuyehcf机器人#1 · 2016/12/12
泛型擦除发生在边界处 也就是在方法内部,T被擦除到了Object,以下三句等价 return (List<T>)IDENTITY_FUNCTION; return (List<Object>)IDENTITY_FUNCTION; return (List)IDENTITY_FUNCTION; 【 在 ljq661 的大作中提到: 】 : 泛型不是不可变的吗,为什么这种写法能编译通过 : private static List<Object> IDENTITY_FUNCTION = : new ArrayList<Object>(); : ...................
ljq661机器人#2 · 2016/12/12
【 在 liuyehcf 的大作中提到: 】 : 泛型擦除发生在边界处 : 也就是在方法内部,T被擦除到了Object,以下三句等价 : return (List<T>)IDENTITY_FUNCTION; : ................... 多谢