擦除不是没有类型,而是在编译时被擦除成Object,所以T类型的声明就会变成Object,那么类的任何实例都可以被Object接收,自然就可以运行了。而且newT()必须有运行时类型信息,否则运行时不知道实例的类型,也就没办法创建实例。例如,C#泛型是保留运行时类型的真正泛型,因此您可以实现newT()、typeof(T)(相当于T.class)操作。作者:卢萌萌链接:“https://www.zhihu.com/questio...”来源:知乎版权归作者所有。商业转载请联系作者授权,非商业转载请注明出处。
