java 中Class<?> 中的?代表什么意思
2 回答
海绵宝宝撒
TA贡献1809条经验 获得超8个赞
给你举个例子,
Class<Integer> cla;与Class<?> cl;
前一个表示cla只能指向Integer这种类型,而后一个cl表示可以指向任意类型。
cla = Integer.class 可以,但cla = Double.class就不可以。
但是cl = Integer.class 可以,cl = Double.class也可以 、
?是通配符。
慕容3067478
TA贡献1773条经验 获得超3个赞
泛型是指规定一定的类型。
Class是泛型 Class是不确定类型,一般来说没什么区别,还有一个就是Class类型,没有泛型。 但是有时候会有点点区别,比如定义这种类型变量,这里的Class首字母需要大写,因为java中class是关键字,希望注意。
例如:Class a;Class b; Class c; 这三个变量,区别在于接受不同类型。 只有T可以接受泛型,其他一样。 Class b; 可以写为具体类型Class
泛型都是在编译期的,就是要把类型错误处理在编译期,减少在运行时类型异常
在运行时泛型都会被擦除,就跟没泛型一个样,所以完全看你如何定义,编译时不报错就好。
添加回答
举报
0/150
提交
取消