在Java中,方法签名Enumeration<? extends ZipEntry>是什么意思?

它定义了一个通用的枚举类型。我只是不知道?是什么意思。看来这是在定义一个新类型,并且编译器只需知道新类型扩展了ZipEntry。准确吗?

这是代码的上下文:

for (Enumeration<? extends ZipEntry> e = zipfile.entries();
        e.hasMoreElements(); fileNumber++)
{
    // ...etc...
}


如果我要用英语说Enumeration<? extends ZipEntry>,那会怎么说?

谢谢!

最佳答案

它的意思是“扩展了Enumeration的某些确定但未指定类型的ZipEntry”。

请参见:关于泛型的Oracle教程中的Upper Bounded WildcardsAngelika Langer's Java Generics FAQ

07-24 22:10