gpt4 book ai didi

java - Java 泛型的 'E' 、 'T' 和 '?' 有什么区别?

转载 作者:bug小助手 更新时间:2023-10-28 10:40:54 25 4
gpt4 key购买 nike

我遇到过这样的 Java 代码:

public interface Foo<E> {}

public interface Bar<T> {}

public interface Zar<?> {}

以上三者之间有什么区别,他们在 Java 中称这种类型的类或接口(interface)声明是什么?

最佳答案

前两者之间没有区别 - 它们只是为 type 参数使用不同的名称(ET)。

第三个不是有效的声明 - ?用作通配符,在提供类型参数时使用,例如List<?> foo = ...表示 foo指的是某种类型的列表,但我们不知道是什么。

所有这些都是泛型,这是一个相当大的话题。您可能希望通过以下资源了解它,当然还有更多可用资源:

关于java - Java 泛型的 'E' 、 'T' 和 '?' 有什么区别?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6008241/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com