查看“核心技术:泛型”的源代码
←
核心技术:泛型
跳到导航
跳到搜索
因为以下原因,您没有权限编辑本页:
您请求的操作仅限属于该用户组的用户执行:
用户
您可以查看和复制此页面的源代码。
[[category:JavaCore]] == 为什么要使用泛型 == 泛型程序设计(Generic programming) 意味着编写的代码可以被很多不同类型的对象所重用。 类型参数( type parameters )。ArrayList 类有一个类型参数用来指示元素的类型: <syntaxhighlight lang="java"> ArrayList<String> files = new ArrayList<String>(); </syntaxhighlight> * 在Java SE 7 及以后的版本中, 构造函数中可以省略泛型类型: *: <syntaxhighlight lang="java"> ArrayList<String> files = new ArrayList<>(); </syntaxhighlight> == 定义简单泛型类 == 一个泛型类( generic class ) 就是具有一个或多个类型变量的类。 * 换句话说,泛型类可看作普通类的工厂。 == 泛型方法 == * 类型变量放在修饰符(这里是public static ) 的后面,返回类型的前面。 <syntaxhighlight lang="java"> class ArrayAlg { public static <T> T getMiddle(T... a) { return a[a.length / 2]; } } </syntaxhighlight> == 泛型变量的限定 == 是将T 限制为实现了Comparable 接口(只含一个方法compareTo 的标准接口)的类: <syntaxhighlight lang="java"> public static <T extends Coiparab1e> T min(T[] a) . . . </syntaxhighlight> * 使用关键字extends 而不是implements * T 和绑定类型可以是类, 也可以是接口 * 一个类型变量或通配符可以有多个限定: *: <syntaxhighlight lang="java"> T extends Comparable & Serializable </syntaxhighlight> *: 限定类型用“&”分隔,而逗号用来分隔类型变量。 == 泛型代码和虚拟机 == == 约束与局限性 == == 泛型类的继承规则 == == 通配符类型 == == 反射和泛型 ==
返回至“
核心技术:泛型
”。
导航菜单
个人工具
登录
命名空间
页面
讨论
大陆简体
已展开
已折叠
查看
阅读
查看源代码
查看历史
更多
已展开
已折叠
搜索
导航
首页
最近更改
随机页面
MediaWiki帮助
笔记
服务器
数据库
后端
前端
工具
《To do list》
日常
阅读
电影
摄影
其他
Software
Windows
WIKIOE
所有分类
所有页面
侧边栏
站点日志
工具
链入页面
相关更改
特殊页面
页面信息