SCJP集合的一道题目,大家帮忙

holsten32 2009-06-30 06:57:25
Question 31
Given:
11. // insert code here
12. private N min, max;
13. public N getMin() { return min; }
14. public N getMax() { return max; }
15. public void add(N added) {
16. if (min == null || added.doubleValue() <min.doubleValue())
17. min = added;
18. if (max == null ||added.doubleValue() > max.doubleValue())
19. max = added;
20. }
21. }
Which two, inserted at line 11, will allow the code to compile? (Choose
two.)
A. public class MinMax<?> {
B. public class MinMax<? extends Number> {
C. public class MinMax<N extends Object> {
D. public class MinMax<N extends Number> {
E. public class MinMax<? extends Object> {
F. public class MinMax<N extends Integer> {


答案是DF
1.给一个类加泛型是什么意思?有什么作用?
2.为什么D就对A就不对呢?
3.最好能详细的讲下这道题,分析下每一个答案,什么含义?和其他的有什么区别
...全文
42 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
siukeung_ste 2009-07-02
  • 打赏
  • 举报
回复
你应该再去了解一下java的泛型机制,A. public class MinMax <?> {

这种写法的意思是允许Object及其下的子类,就是所有的JAVA对象都匹配。

此题的代码就是数字的,那肯定就是D和F啊。
livingboy 2009-07-01
  • 打赏
  • 举报
回复
D里面你可以认为N是这个类的一个参数,这个参数是Number的子类。其实很简单
F同理
在方法里面如果返回N类型,就会默认是一个数字。
huosidun0302 2009-07-01
  • 打赏
  • 举报
回复
帮顶

50,523

社区成员

发帖
与我相关
我的任务
社区描述
Java相关技术讨论
javaspring bootspring cloud 技术论坛(原bbs)
社区管理员
  • Java相关社区
  • 小虚竹
  • 谙忆
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧