Java 你能帮助我吗
我学习了java中的泛型。我能理解泛型类型、原始类型、有界类型参数和类型推理。我学过泛型中的通配符。通配符代表什么?未知类型作为类型参数。当我将一个类定义为Company时,编译器告诉我它是一个未定义的类型参数。但我在方法中传递了一个列表,这里不会发生错误。你能告诉我在哪里使用通配符以及它的用途吗Java 你能帮助我吗,java,Java,我学习了java中的泛型。我能理解泛型类型、原始类型、有界类型参数和类型推理。我学过泛型中的通配符。通配符代表什么?未知类型作为类型参数。当我将一个类定义为Company时,编译器告诉我它是一个未定义的类型参数。但我在方法中传递了一个列表,这里不会发生错误。你能告诉我在哪里使用通配符以及它的用途吗 Class Company<?> // error is occurred at this line { void sum(List<? extends Number>
Class Company<?> // error is occurred at this line
{
void sum(List<? extends Number> ls) //does not occur here
{ }
}
你能解释一下这两者的区别吗
Class Company<?>
发件人:
泛型类的定义格式如下:
class name<T1, T2, ..., Tn> { /* ... */ }
下面是由尖括号分隔的类型参数部分
类名。它指定类型参数,也称为类型
变量T1、T2、…、和Tn
您必须为该类型指定一个名称,以便以后可以引用它。 也许你想用这种方式:
class Company<T extends Number> {
void sum(List<T> ls) {
}
}
请减少粗体,增加代码格式:同一个问题刚刚被删除。添加示例代码,可能会得到回答。
class Company<T extends Number> {
void sum(List<T> ls) {
}
}