【发布时间】:2011-12-14 22:28:45
【问题描述】:
我正在定义一个类:
class Foo<I extends Bar & Comparable<I>> {
}
编译器抱怨I 被I 隐藏。我猜I 第二次出现在定义中是隐藏在第一个范围内,好像变量I 可以分配给两种不同的类型。如何正确操作?
编辑:
这是一个内部类。完整的代码可以是:
class Baz<I> {
class Foo<I extends Bar & Comparable<I>> {
}
}
现在的问题是,如果我将内部I 重新提名为J,我不确定I 和J 实际上是同一类型。
【问题讨论】:
-
为我编译 - 您的代码中是否有类型
I定义? -
同样,没有警告。
-
是的,你说得对。这是一个内部类,外部类也使用 I。如果我在
J中重新提名I,那么我不能保证它们是相同的。还是? -
第二个
I是第一个I。