A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

© 孙茜茜 中级黑马   /  2013-6-18 23:17  /  1672 人查看  /  6 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

本帖最后由 Super_Class 于 2013-6-19 19:36 编辑

1、class B implements Comparator<T> {}
2、class B<T> implements Comparator {}
3、class B<T> implements Comparator<T> {}


先问一下:2是不是错的?
然后3种分别是什么意思啊???好混乱

评分

参与人数 1技术分 +1 收起 理由
Super_Class + 1

查看全部评分

6 个回复

正序浏览
同样求解
回复 使用道具 举报
第二种不错吧, 但是会有警告.

类声明后面加上泛型表示的只能存储制定类型的元素.
第三种应该是最标准最常用的写法吧.
回复 使用道具 举报
姚志远 发表于 2013-6-19 00:34
首先说明呵  第二种也是正确的 具体看代码了

这。。。。还是领会不到。。。
回复 使用道具 举报
首先说明呵  第二种也是正确的 具体看代码了
  1. package com.heima.collections;

  2. import java.util.Comparator;
  3. //第一种      意思是比较两个字符串

  4. class MyComparator1 implements Comparator<String>
  5. {

  6.         public int compare(String o1, String o2) {
  7.                 return 0;
  8.         }
  9.    
  10. }
  11. //第二种   首先限定比较的是字符串     然后限定比较方法可以是字符串长度的比较也可以是其他
  12. class MyComparator2<String> implements Comparator
  13. {

  14.         public int compare(Object o1, Object o2) {
  15.        
  16.                 return 0;
  17.         }
  18. }
  19. //第三种  首先限定比较的是字符串   然后限定比较方法还是比较两个字符串
  20. class MyComparator3<String> implements Comparator<String>
  21. {

  22.         public int compare(Object o1, Object o2) {
  23.        
  24.                 return 0;
  25.         }
  26. }
  27. public class Test2 {
  28. public static void main(String[] args) {

  29.         }

  30. }


复制代码

评分

参与人数 1技术分 +1 收起 理由
Super_Class + 1

查看全部评分

回复 使用道具 举报
第三种要求类型B < T >必须实现继承的抽象方法比较器< T >比较(T,T)
最好还是先向上转型.向下转型上用些功夫..
比直接就用泛型的要好的
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马