java 泛型
来源:互联网 发布:c语言数组占几个字节 编辑:程序博客网 时间:2024/06/08 19:15
对于java中的泛型自己理解为:泛型的定义说白了就是,传带参数类型的类,方法,接口,就好比是定义时方法中传入参数一样
为什么定义泛型:
1.Java泛型可以解决类型安全问题,如果没有泛型集合中可以放入任何类型
2.没有泛型的遇到的麻烦:从集合中获取参数的时候,需要强制转换
3.泛型的使用有使用泛型类,使用泛型方法
注意:
1、泛型的类型参数只能是类类型(包括自定义类),不能是简单类型。
2、同一种泛型可以对应多个版本(因为参数类型是不确定的),不同版本的泛型类实例是不兼容的。
3、泛型的类型参数可以有多个。
4、泛型的参数类型可以使用extends语句,例如<T extendssuperclass>。习惯上成为“有界类型”。
5、泛型的参数类型还可以是通配符类型。例如Class<?> classType =Class.forName(Java.lang.String);
代码:
泛型的定义
//定义泛型类,可以理解为带一个参数类型为T的类public class Dao <T>{//类中的方法和变量的声明可以用该类的类型Tpublic T get(int id){//定义T类型的变量T result = null;return result;}//定义泛型方法,<E>和定义类一样表示//传入一个参数E类型的方法,该<>中可以有多个参数,之间用逗号隔开public <E> E gets(E name){E result = null;return result;}}
继承泛型类的情况
第一种:继承时把父类泛型参数带上,而子类没有则编译不过,如
public class Child1 extends Parent<T> {}
第二种:子类也带上父类的参数类型,编译通过
public class Child2<T> extends Parent<T> {}
第三种:父类不带上参数<T>,编译通过
public class Child3 extends Parent{}
还有关泛型继承的几种测试参考:
http://blog.csdn.net/java2000_net/article/details/3081472还请各位指出不足之处,谢了
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泛型
- DFSDFSDFDSGDFGDGFFGDGHDHFGJHG
- 统计n-k特殊集的数目
- 海量数据处理专题(一)——开篇
- bzoj3668 [Noi2014]起床困难综合症
- iOS 画图context/QuartzCore(相关函数的解释)
- java 泛型
- java多线程-线程运行状态-获取线程对象以及名称
- 大数阶乘
- vim下backspace键不能用
- 打印1到最大的n位数
- 执行 添加 删除 修改的sql语句方法
- STM32单片机选型原因,自己编写的IIC
- POJ1463Strategic game——树形动态规划
- 网站站内数据分析