玩转范型——高篇.docVIP

  • 0
  • 0
  • 约4.1千字
  • 约 4页
  • 2019-08-10 发布于江苏
  • 举报
JDK6新特性系列——玩转范型(高级篇) 范型的语法元素其实是很基本的,只不过将这种语法来回扩展以后,可以编写出相当复杂的范型定义,然而无论再怎么复杂的写法,基本语法大致不变:限制范型可用类型、使用类型通配符,以及范型的扩充与继承几个语法。 限制范型可用类型 在定义范型类时,默认可以使用任何的类型来实例化范型类中类型持有者,但假设想要限制使用范型类时,如何用某个特定类型或其子类来实例化类型持有者呢? 可以在定义类型持有者时,同时使用extends指定这个类型持有者实例化,实例化的对象必须是扩充自某个类型或实现某接口 ListGenericFoo在声明类型持有者时,一并指定这个持有者实例化的对象,必须是实现java.util.List接口的类。在限定持有者时,无论要限定的对象是接口或类,都是使用extends关键词。程序中使用extends限定类型持有者实例化的对象,必须是实现List接口的类,象java.util.LinkedList与java.util.ArrayList就实现了List接口,那么如下代码片段是合法的使用方式: 但如果不是实现List的类,编译时就会发生错误。例如下面的程序片段通不过编译: 因为java.util.HashMap并没有实现List接口(事实上HashMap实现了Map接口),编译器会在编译时检查出这个错误: type parameter java.

文档评论(0)

1亿VIP精品文档

相关文档