Object <String>在Java中表示什么?

Nic*_*s C 5 java

我是Java新手,但不是编程(我通常用Ruby编写代码).我在Java代码示例中看到的一件事是使用<>而不是()将params传递给对象.下面是一个代码示例(摘自Google Web Toolkit教程):

public void onValueChange(ValueChangeEvent<String> event) {
    String token = event.getValue();

    // depending on the value of the token, do whatever you need
    ...
}
Run Code Online (Sandbox Code Playgroud)

它与铸造有关还是别的什么?有人可以向我解释这表示或用于什么?谢谢!

Mic*_*rdt 4

这是泛型类的类型参数。基本上, aValueChangeEvent<String>表示通知侦听器值已更改的事件,在本例中,值的类型为String

通过集合框架中的标准示例更容易理解:

AList<String>List包含String对象的 a。与仅使用“原始类型”相比的优点List是,编译器将拒绝将除String对象之外的任何内容放入 a 中的代码List<String>,并允许从其中检索的对象在不进行强制转换的情况下使用String

基本上,泛型使得在许多情况下无需使用类型Object和强制转换值,从而使代码更加简洁,并提高 Java 代码的整体类型安全性。