Chinaunix首页 | 论坛 | 博客
  • 博客访问: 179667
  • 博文数量: 46
  • 博客积分: 1445
  • 博客等级: 上尉
  • 技术积分: 448
  • 用 户 组: 普通用户
  • 注册时间: 2008-05-27 22:20
文章分类

全部博文(46)

文章存档

2013年(4)

2012年(12)

2011年(3)

2010年(5)

2009年(16)

2008年(6)

我的朋友

分类: Java

2013-03-31 11:28:13


点击(此处)折叠或打开

  1. import java.util.HashSet;
  2. import java.util.Set;

  3. public class WildcardGeneric<E> {
  4.     
  5.     static int UnboudedGetSize(Set<?>s) {
  6.         //s.add(1); 编译错误,只能add null
  7.         s.add(null);
  8.         return s.size();
  9.     }

  10.     int getSize(Set<E> s) {
  11.         return s.size();
  12.     }
  13.     
  14.     int BoundedGetSize(Set<? extends E> s) {
  15.         return s.size();
  16.     }
  17.     /**
  18.      * @param args
  19.      */
  20.     public static void main(String[] args) {
  21.         Set<Integer> hs = new HashSet<Integer>();
  22.         hs.add(10);
  23.         
  24.         System.out.println(UnboudedGetSize(hs));
  25.         
  26.         WildcardGeneric<Number> numberwg = new WildcardGeneric<Number>();
  27.         //numberwg.getSize(hs); 编译错误,不支持Number的派生类
  28.         System.out.println(numberwg.BoundedGetSize(hs));
  29.         
  30.         WildcardGeneric<Integer> integerwg = new WildcardGeneric<Integer>();
  31.         System.out.println(integerwg.getSize(hs));
  32.         System.out.println(integerwg.BoundedGetSize(hs));
  33.         

  34.     }

  35. }

阅读(661) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~