Java 泛型
来源:互联网 发布:看书的软件推荐 编辑:程序博客网 时间:2024/06/06 07:37
1.泛型的定义
泛型:可以代表任意类型的类型(定义时是任意的,使用时是限定的)
public class MyClass<T>{ //属性 public T field; //构造 public MyClass(T t){ this.field=t; } //成员方法 public int method(T t){ if(t.getClass()==String.class){ return Integer.parseInt((String)t); }else if(t.getClass()==int.class||t.getClass()==Integer.class){ return (Integer)t; }else{ return 0; } }}
泛型只接受引用类型,所以int不能使用,用Integer
2.泛型的继承
public class MyClass2<T extends ParentClass>{}
T在使用时必须是包含c在内的子类
3.
1.泛型同样可以定义在方法上,作用范围在局部而不是全局。
public class MyClass3{ public <T> void method(T t){ T a=t; System.out.println(a); }}
2.
List<? extends ParentClass> list=new ArrayList<ChildClass>();List<? super ChildClass> list=new ArrayList<ChildClass>();//<? super ChildClass>用于限制范围,限制后边的类型
3.
//这种写法是错误的List<? super ChildClass> list2=new ArrayList<Object>();list2.add("abc");//而如下写法就正确ArrayList<Object> list2=new ArrayList<Object>();list2.add("abc");List<? super ChildClass> list3=list2;System.out.println(list3.size());System.out.println(list3.get(0));
泛型规定的是输入规则,不是内部规则
泛型是安全控制手段,不改变实际业务代码(只是一个门卫的作用)
0 0
- 【java 2】java泛型
- Java 泛型 Java generic
- Java Tutorials_Generics(java泛型)
- Java基础 Java 泛型
- java 泛型
- java泛型
- Java泛型
- Java泛型
- java泛型
- java泛型
- java泛型
- Java 泛型
- Java泛型
- Java 泛型
- JAVA 泛型
- java 泛型
- java泛型
- Java泛型
- meta标签
- 字符串比对
- Qt上的OpenCV学习日记①之工程创建
- nginx设置请求body大小
- unity5.3新API使用进度条,异步加载场景的代码
- Java 泛型
- CSS 垂直居中对齐
- 函数指针概述和用途
- c++::详解虚表
- 中断上下文和进程上下文的区别
- Backbone基础
- 自己记录常遇到的git命令
- 4-7-Isomorphic
- [jjzhu学java]之JDK集合框架源码分析