博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
java:“泛型”的前世今生
阅读量:7096 次
发布时间:2019-06-28

本文共 875 字,大约阅读时间需要 2 分钟。

泛型实现了参数化类型的概念。注意,什么是参数化类型?举个例子

DaoHolder<T>

DaoDaoHolder:表示类
<T> T就表示参数。

上面什么意思。表示我这个类使用很多很多类型。T可以被Person、Org等类替换。

泛型最初的目的是希望类和方法有最广泛的表达能力。如何实现?

就是通过
DaoHolder<T> 与使用类之间的约束。DaoHolder<Org>

在java中有很多原因促成泛型的出现,其中一个主要原因是容器。容器就是存放使用对象的地方。数组算容器,但是泛型更加灵活,具备更多灵活的功能。程序在运行的时候需要一大堆对象,这就是容器的用途,容器算是最有用的类了。

泛型其实就是一个模板。

泛型的主要目的

指定容器要持有什么类型的对象,由编译器保证类型的正确性。

我们更喜欢暂时不指定类型,而在使用时决定是什么对象类型。如何达到这个目的,对了,使用类型参数,用尖括号括住,放在类的后面。

public class Holder3
{ private T a; public Holder3(T a) { this.a = a; } public void set(T a) { this.a = a; } public T get() { return a; } public static void main(String[] args) { Holder3
h3 = new Holder3
(new Automobile()); Automobile a = h3.get(); // No cast needed // h3.set("Not an Automobile"); // Error // h3.set(1); // Error }class Automobile {}}

转载地址:http://qqaql.baihongyu.com/

你可能感兴趣的文章