泛型概述:JDK1.5版本出现新特性,用于解决安全问题,是一个安全机制
好处:
1:将运行时期出现数据类型不一致问题转移到编译时期提示
2:避免强制转换麻烦
ArrayList<String> al = new ArrayList<String>();
Iterator<String> it = al.iterator();
String s = it.next();
泛型使用:通过<>来定义要操作的引用数据类型,通常在集合框架中常见,只要见到<>就要定义泛型。
泛型类:当类中要操作的引用数据类型不确定时早期定义Object完成扩展,现在定义泛型扩展。
例如:- Class Utils<QQ>
- {
- Private QQ q;
- Public void setObject(QQ q)
- {
- this.q = q;
- }
- Public QQgetObject()
- {
- Return q
- }
- }
复制代码 泛型方法:
- Class Demo{
- Public <T> void show(T t)
- {
- //方法体
- return;
- }
- Public <Q> void print(Q q)
- {
- //方法体
- return;
- }
- }
复制代码 静态方法泛型:静态方法不可以访问类上的泛型,如果静态方法要操作的引用数据类型不确定,可以将泛型定义在方法上
- Public static <w> void method(W w)
- {
- //方法体
- }
- 泛型接口:
- [java] view plaincopy
- Interface Inter<T>
- {
- Void show(T t);
- }
- Class InterImpl implements Inter<String>
- {
- Pubic void show (String t)
- {
- System.out.print(str);
- }
- }
- Class InterImpl<T> implements Inter<T>
- {
- pubic void show (T t)
- {
- System.out.print(t);
- }
- }
复制代码
|
|