Gosu中的泛型是如何工作的?

3

Java引入了泛型,那么它是如何实现的呢?与C#的泛型有什么显著的不同吗?


我建议应该将此重新标记为“gosu-lang”或类似的内容。现有的gosu标签被用于同名的图形库。 - Mike Miller
@Mike - 已完成。同时在元社区上提出了问题 - http://meta.stackexchange.com/questions/69940/what-should-be-done-with-the-gosu-tag - ripper234
太酷了,谢谢。我应该先在那里找,像往常一样。 :) - Mike Miller
@Mike - 其实,在你的评论之后,我才在那里问了这个问题! - ripper234
2个回答

2
与C#泛型的区别:对于不同实例化的泛型类,C#在运行时生成类。Gosu不会这样做:一个泛型类对应一个在运行时使用的类。类型信息保留在对象内部,而不是类中。因此,C#可以专门为代码(例如原始类型)进行优化,而Gosu则不能。例如,Gosu必须将int包装成对象才能将它们放入列表中。

1

我最近才看了Gosu,还没有真正写过任何程序;但我能说的是,具体而言,reified generics指的是Gosu保留了泛型对象的原始类型。

在Java中,如果不使用反射,就无法找出传递给泛型函数的某个东西的原始类型。

请查看文档中此页面底部。它并没有说明如何实现,只是说可以实现。

同时,请参考以下问题:


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接