![](https://img-blog.csdnimg.cn/20201014180756922.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
java基础
张天启
这个作者很懒,什么都没留下…
展开
-
java泛型的定义
为什么要是用泛型是用泛型后意味着编码可以被很多不同类型的对象是重用!在java中增加泛型设计前,泛型程序设计采用继承实现。ArrayList类只维护一个Object数组,这么做有几个不好的地方,例如下面的例子 public static ArrayList{ private Object[] elementData; ... public Ob原创 2017-12-06 11:35:48 · 237 阅读 · 0 评论 -
java 泛型变量的限定
为什么需要限定类型变量 public class ArrayAlg{ public static <T> min(T[] a){ if(a == null || a.length ==0){ return null; } T smallest = a[0];原创 2017-12-06 14:39:21 · 287 阅读 · 0 评论 -
java 泛型中 ? T K V E等代表的含义
E - Element (在集合中使用,因为集合中存放的是元素) T - Type(Java 类) K - Key(键) V - Value(值) N - Number(数值类型) ? - 表示任意的java类型原创 2017-12-05 16:51:25 · 1523 阅读 · 0 评论 -
java泛型代码的处理
泛型代码和虚拟机对于虚拟机来说,没有泛型类型对象,所有对象都属于普通类 + 任何一个泛型类都提供了一个相应的原始类型(原始类型就是删除类型参数后的泛型类型名) + 擦除类型变量,并且替换为限定类型(无限定的变量用Object)在擦除类型的时候如果没有限定类型就用Object,如果有就采用第一个限定类型Pair 擦除类型后如下所示 public class Pair{ pri原创 2017-12-06 17:03:58 · 279 阅读 · 0 评论 -
java泛型使用时的约束与局限性
不能使用基本类型实例化类型参数运行时类型查询只适用于原始类型java if(a intanceof Pair<Stirng>) //ERROR java Pair<String> p = (Pair<String>) a; //Error 上面的2个例子在java中都是错误的 + 类型查询只适用于原始类型 + 参数化类型不能进行强制类型转换不能创建参数化类原创 2017-12-07 16:52:26 · 667 阅读 · 0 评论