Java基础———Java中的泛型,
Java基础———Java中的泛型,
1、基本概念
泛型是一种将数据类型参数化以最大限度的进行代码重用的技术。
Java中泛型的最小定义单位是类。
Java中定义了泛型的类叫做泛型类。
2、泛型类的定义
在类声明的同时通过<>声明泛型参数。
<>中声明的类型参数可以用于定义类属性和类方法。
3、泛型类的使用
包含泛型声明的类类型可以在定义引用创建对象时传入类型实参。
传入类型实参后创建的对象是一个在逻辑上处理特定类型的“专用”对象。
4、深入泛型
泛型其实是一种模板机制。
通过泛型可以创建出任意个处理特殊类型的类。
理论上可以把任何一个类都定义成泛型。
实际的开发过程中一般吧容器类型的类定义成泛型类,eg:链表、栈、队列等。
可以在定义泛型类时指定任意个的类型参数。
声明引用和创建对象时必须指定所有的类型参数。
定义泛型类的构造方法时不需要增加泛型声明。
5、从泛型类派生子类
泛型类可以传入实际类型参数创建一个实现类,而且可以从泛型类派生子类。
当泛型类作为父类使用时不能再包含类型参数。
使用泛型类时如果为指定类型实参,则类型实参默认为Object。
当泛型类作为父类使用时必须传入实际类型,否则所有类型参数被当做Object处理。
6、泛型类的本质
Java中的泛型是有编译器实现的,可以简单的类比为C语言中的宏定义。
Java编译器不允许同一个泛型类的不同实现类的引用间相互赋值。
同一个泛型类的不同实现类的类型是相同的。
所有泛型类的实现类对象共享静态属性和方法。
静态方法和静态属性不允许使用类型参数。
Java中泛型准则:只要编译时系统没有产生“未经检查的转换”警告,则程序运行时不会产生ClassCastException异常。
相关文章
- 暂无相关文章
用户点评