本月博客排行
-
第1名
青否云后端云 -
第2名
vipbooks -
第3名
e_e - silverend
- lemonhandsome
- kingwell.leng
- jveqi
- xiangjie88
年度博客排行
-
第1名
青否云后端云 -
第2名
zw7534313 -
第3名
大家都说我很棒 - liyihz2008
- wy_19921005
- gengyun12
- hbxflihua
- e_e
- luxurioust
- dbagirl
- zysnba
- robotmen
- Alsmile
- gaozzsoft
- jywhltj
- cpongo1
- leslie26
- qepwqnp
- zhangdaiscott
- 解宜然
- cuityang
- sichunli_030
- gashero
- fantaxy025025
- gdpglc
- ssydxa219
- wallimn
- vipbooks
- ranbuijj
- 淡看人生
- jickcai
- hanbaohong
- javashop
- johnsmith9th
- appalese
- gaojingsong
- weiyides
- zhangyi0618
- java-007
- AVI
- laiyangdeli
- lyongq04
- xpenxpen
- liunancun
- 龙哥IT
- conkeyn
- nychen2000
- lyndon.lin
- silverend
- ouanui
最新文章列表
Java泛型认识与总结之三(超好)
类型擦除:
Java泛型在编译期之后就会把类型给擦除,在生成的Java字节代码中是不包含泛型中的类型信息的。使用泛型的时候加上的类型参数,会被编译器在编译的时候去掉。这个过程就称为类型擦除。如在代码中定义的List<Object>和List<String>等类型,在编译之后都会变成List,所以泛型只是对于编译期来说的,在执行期间是没有泛型可言。
Java泛型认识与总结之二(超好)
接上:
由于使用泛型,在编译期的时候会执行类型检查,目的为了确保类型安全,所以
此时intList只能添加Integer或int的数据,strList也只能添加String。
对于没有使用泛型的List,如List list = new List();在编译期是没有进行类型安全检查,所以这种list可以添加任何类型的元素。
Java泛型认识与总结之一(超好)
打开jdk1.6源码,看到这个片段:
public interface List<E> extends Collection<E> {
Iterator<E> iterator();
boolean containsAll(Collection<?> c);
}
其中用尖括号括起来的就是泛型,因此我们可以像 ...