Java 泛型(generics)是 JDK 5 中引入的一个新特性, 泛型提供了编译时类型安全检测机制,该机制允许程序员在编译时检测到非法的类型,泛型的本质是参数化类型,也就是说所操作的数据类型被指定为一个参数。在Comparable/Comparator接口中通过泛型指定比较对象的数据类型, 在Collection集合中,通过泛型指定集合元素的类型。泛型就是把数据类型参数化,随之而来的好处就是可以在编译时进行数据类型检查。
Java语言中引入泛型是Java一个非常重要的转折点,在JDK5中引入了泛型,一为Java增加了一个新的语法元素,同时,泛型改变了若干核心API中的许多类与方法,通过使用泛型, 可以创建以类型安全的方式使用各种类型数据的类,接口及方法,许多算法虽然操作的数据类型不同,但是算法逻辑是相同的,使用泛型就可以只定义一次算法,使算法独立于特定的数据类型。
不仅语言、类型系统和编译器有了较大的变化,以支持泛型,而且类库也进行了很大的改动,许多重要的类,比如集合框架,都已经成为泛型化的了。泛型的主要目标是提高Java程序的类型安全。通过知道使用泛型定义的变量的类型限制,编译器可以在非常高的层次上验证类型假设。没有泛型,这些假设就只存在于系统开发人员的头脑中。通过在变量声明中捕获这一附加的类型信息,泛型允许编译器实施这些附加的类型约束。类型错误就可以在编译时被捕获了,而不是在运行时当作ClassCastException展示出来。将类型检查从运行时挪到编译时有助于Java开发人员更早、更容易地找到错误,并可提高程序的可靠性。这也是我们所有的从事Java开发的开发人员所一直追求的,而我们的视频课程——Java泛型视频教程正是能够带领我们走向这一目标的全新课程体系。我们从下面的部分课程目录就能够看出这由数位名师精心打造的专业课程的深浅。
1-1 泛型概述 (08:47)
1-2 泛型对集合的影响 (15:55)
2-1 定义简单泛型类 (06:57)
2-2 测试泛型类 (13:28)
2-3带有两个参数的泛型类 (07:15)
2-4 有界类型 (15:21)
2-5 通配符参数 (11:28)
2-6 通配符参数2 (09:41)
2-7 有界通配符 (14:28)
2-8 有界通配符2 (16:43)
2-9 定义泛型方法 (16:54)
2-10 泛型方法中类型参数的确定 (08:54)
2-11 泛型方法中通配符参数 (05:54)
2-12 如何选择泛型方法还是类型通配符 (13:17)
2-13 泛型构造方法 (07:28)
2-14 泛型接口 (14:05)
2-15 泛型子类继承泛型父类 (07:09)
2-16 在泛型子类中可以添加自己的类型参数 (04:50)
2-17 泛型类层次中的运行时类对象 (10:28)
2-18 类型推断 (05:43)
2-19 泛型擦除 (10:16)
2-20 泛型擦除2 (08:50)
2-21 使用泛型的限制 (10:00)
3-1 反射泛型_Type接口简介 (18:26)
3-2 反射泛型_ParameterizedType简介 (10:15)
3-3 反射泛型_ParameterizedType代码演示 (13:01)
3-4 反射泛型_TypeVariable (10:58)
3-5 反射泛型_GenericArrayType (12:38)
3-6 反射泛型_WildcardType (19:10)
3-7 反射泛型_反射类中所有内容1 (13:23)
3-8 反射泛型_反射类中所有内容2 (16:32)
3-9 反射泛型_反射类中所有内容3 (07:37)
本课程致力于从Java泛型基础出发,为我们打造全方位无死角的Java泛型知识体系。我们知道,在非泛型编程中,将筒单类型作为Object传递时会引起Boxing(装箱)和Unboxing(拆箱)操作,这两个过程都是具有很大开销的。引入泛型后,就不必进行Boxing和Unboxing操作了,所以运行效率相对较高,特别在对集合操作非常频繁的系统中,这个特点带来的性能提升更加明显。因此,我们也更加确定Java泛型的应用是符合市场规律的,Java泛型技术的学习是前途无量的。
提枪策马乘胜追击04-21 20:01
代码小兵87207-15 12:10
杨晶珍05-11 14:54
杨晶珍05-12 17:30