通配符

冷不防 2021-09-16 00:14 533阅读 0赞

通配符:
泛型通配符 ? 通配任意类型

<? extends T>和<? super T>的区别
 <? extends T>表示该通配符所代表的类型是T类型的子类。
 <? super T>表示该通配符所代表的类型是T类型的父类。

举例:

  1. public class Demo5 {
  2. public static void main(String[] args) {
  3. Animal<?> objectAnimal=new Animal<Date>();
  4. //向上限定 右边的泛型只能是它本身或是它的父类
  5. Animal<? super Animal> animal=new Animal<Object>();
  6. //向下限定 右边的泛型只能是它本身或是它的子类
  7. Animal<? extends Animal> animal2=new Animal<Dog>();
  8. //Dog为animal的子类
  9. Animal<? extends Animal> animal3=new Animal<Cat>();
  10. //Cat为animal的子类
  11. }
  12. }
  13. class Animal<A>{}
  14. class Dog<A> extends Animal<A>{}
  15. class Cat<A> extends Animal<A>{}

发表评论

表情:
评论列表 (有 0 条评论,533人围观)

还没有评论,来说两句吧...

相关阅读

    相关 通配符

    在搜索数据库中的数据时,您可以使用 SQL 通配符。 SQL 通配符 在搜索数据库中的数据时,SQL 通配符可以替代一个或多个字符。 SQL 通配符必须与 LIKE

    相关 lua通配符

    正则表达式主要处理匹配问题,即通过给定语义通配符串,返回匹配成功的字符串列表。   在匹配的基础上,正则引擎往往提供了字符串的查找、替换、分割等功能,lua支持查找与替换,

    相关 Java通配符(?)

    1、如果要定义一个泛型类来表示坐标,坐标可以是整数、小数或字符串,请看下面的代码: class Point<T1, T2>{ T1 x;

    相关 通配符

    通配符:                      泛型通配符   ?  通配任意类型 <? extends T>和<? super T>的区别 