Java千百问_05面向对象(012)_泛型是什么

简介:

1、什么是泛型

泛型是Java SE 1.5的新特性,泛型即参数化类型,也就是说所操作的数据类型被指定为一个参数。 
这种参数类型可以用在类、接口和方法的创建中,分别称为泛型类泛型接口泛型方法。 
如何使用泛型方法、泛型类/接口看这里:泛型如何使用 
在没有泛型的情况的下,通过对类型Object的引用来实现参数的“任意化”,“任意化”带来的缺点是要做显式的强制类型转换,而这种转换是要求开发者对实际参数类型可以预知的情况下进行的。 
对于强制类型转换错误的情况,编译器可能不提示错误,在运行的时候才出现异常,这是一个安全隐患。 
所以,Java语言引入泛型的好处是安全简单,在编译的时候检查类型安全,并且所有的强制转换都是自动和隐式的,以提高代码的重用率。

2、泛型有那些特点

  1. 泛型的类型参数只能是类类型(包括自定义类),不能是基础类型(如int,double和char)。
  2. 同一种泛型可以对应多个版本(因为参数类型是不确定的),不同版本的泛型类实例是不兼容的。
  3. 类的泛型类型可以有多个
  4. 泛型之间没有继承关系,即使String继承了Object。下面的代码是非法的 
    List ls = new ArrayList(); 
    List lo = ls;
  5. 泛型的类型参数可以使用extends语句,例如。习惯上称为有界类型
  6. 泛型的类型参数还可以是通配符类型。例如Class

原文地址:http://blog.csdn.net/ooppookid/article/details/51233605
相关文章
|
5天前
|
安全 Java 程序员
Java 泛型
Java 泛型
10 0
|
6天前
|
存储 安全 Java
Java面向对象最新超详细总结版!
Java面向对象最新超详细总结版!
25 7
Java面向对象最新超详细总结版!
|
2天前
|
存储 安全 Java
掌握8条泛型规则,打造优雅通用的Java代码
掌握8条泛型规则,打造优雅通用的Java代码
掌握8条泛型规则,打造优雅通用的Java代码
|
2天前
|
Java
java面向对象——包+继承+多态(一)-2
java面向对象——包+继承+多态(一)
16 3
|
2天前
|
SQL Java 编译器
java面向对象——包+继承+多态(一)-1
java面向对象——包+继承+多态(一)
16 2
|
10天前
|
Java
JAVA难点包括异常处理、多线程、泛型和反射,以及复杂的分布式系统知识
JAVA难点包括异常处理、多线程、泛型和反射,以及复杂的分布式系统知识。入坑JAVA因它的面向对象特性、平台无关性、强大的标准库和活跃的社区支持。
32 2
|
12天前
|
存储 Java 开发工具
【Java探索之旅】用面向对象的思维构建程序世界
【Java探索之旅】用面向对象的思维构建程序世界
11 0
|
13天前
|
Java
java使用面向对象实现图书管理系统
java使用面向对象实现图书管理系统
|
13天前
|
Java
Java语言---面向对象的三大特征之继承
Java语言---面向对象的三大特征之继承
|
13天前
|
机器学习/深度学习 Java Python
Java面向对象知识体系---基础版
Java面向对象知识体系---基础版