Java的泛型

泛型,即参数化类型 https://docs.oracle.com/javase/tutorial/extra/generics/index.html

An enhancement to the type system that supports operations on objects of various types while providing compile-time type safety.

基本类型不能作为泛型

静态方法、静态初始化块、静态变量的声明和初始化不能使用泛型。

泛型不是重载要素

instanceof 不能用泛型

Pair<Sub> 与 Pair<Parent> 没有任何继承关系

<T super 类 & 接口> 泛型为父类

<T extends 类 & 接口> 泛型为子类

Java6及以前必须这么写 List<String> strList1 = new ArrayList<String>();  

Java7及以后可以这么写 List<Integer> strList2 = new ArrayList<>();

strList1.getClass()==strList2.getClass()=>true

泛型规范:

  • T - Type(类型)

  • R - Result(结果)

  • K - Key(键)

  • V - Value(值)

  • E - Element (元素)

  • N - Number(数字)

  • ? - 不确定类型

?和T的区别:Java 泛型 T,E,K,V,?,傻傻分不清?

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值