泛型浅析

转载:http://www.2cto.com/kf/201211/169210.html


1.泛型概念

泛型(Generic type 或者 generics)是对 Java 语言的类型系统的一种扩展,以支持创建可以按类型进行参数化的类。可以把类型参数看作是使用参数化类型时指定的类型的一个占位符,就像方法的形式参数是运行时传递的值的占位符一样。可以在集合框架(Collection framework)中看到泛型的动机。


2.泛型简单使用

	class Name<H>{
		public void getClassName(H c){
			System.out.println(c.getClass().getName());
		}
	}
	@org.junit.Test
	public void testGeneric(){
		//自定义泛型
		new Name<String>().getClassName("2");
		//使用泛型
		Map<String, String> map1=new HashMap<String, String>();
		map1.put("1", "1");
		map1.put("2", "2");
		String s1=map1.get("1");
		//未使用泛型
		Map map2=new HashMap();
		map2.put("1", "1");
		map2.put("1", "1");
		String s2=(String) map2.get("1");
		
		//编译器自动识别
		List<Integer> list=new ArrayList<Integer>();
		list.add(1);
		list.add(2);
		List<?> l=list;
		System.out.println(l.size());//2
	}

3.泛型好处

消除强制类型转换。 泛型的一个附带好处是,消除源代码中的许多强制类型转换。这使得代码更加可读,并且减少了出错机会。
  • 2
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值