这个声明是什么意思?

时间:2010-12-18 09:34:23

标签: java generics

对于此声明

final Map<?, ?> qBuilders;
这是什么意思?

4 个答案:

答案 0 :(得分:4)

它声明了类属性qBuilders。此变量必须在构造函数中初始化,之后您无法为该属性分配另一个值(但您可以更改地图键和值 - 您无法交换整个地图)。 / p>

Map是一个通用接口,<?,?>是此属性的类型参数?是一个通配符,只是说明了这个地图接受了键和值的任何java类型。

答案 1 :(得分:0)

这是一个空白的决赛。您可以为变量赋值一次,但之后无法重新分配变量,但它不会使qBuilders映射不可变。您仍然可以像往常一样调用其方法并使用地图。例如,请参阅Wikipedia上的说明。

答案 2 :(得分:0)

虽然您的问题相当模糊,但final关键字在变量的上下文中表示该变量只能分配一次。如果变量是类的字段,则必须在所述类的构造函数中指定它。

答案 3 :(得分:0)

- 这意味着任何java类型(String,Integer ...)