• 技术文章 >java >java基础

    java通配符有哪些

    小妮浅浅小妮浅浅2021-07-19 09:59:49原创5324

    1、通配符,代表未知类型,代表不关心或无法确定实际操作的类型,一般与容器类配合使用。

    public void testV(List<?> list) {}

    2、<? extends T>,定义上限,期间只有阅读能力。这种方法表明参数化的类型可能是指定的类型或子类型。

    //t1要么是Test2,要么是Test2的子类
    public void testC(Test1<? extends Test2> t1) {
        Test2 value = t1.getValue();
        System.out.println("testC中的:" + value.getT());
    }

    3、<? super T>,下限定义,有阅读能力和部分写作能力,子类可以写入父类。这种方法表明参数化的类型可以是指定的类型,也可以是父类。

    //t1要么是Test5,要么是Test5的父类
    public void testB(Test1<? super Test5> t1) {
        //子类代替父类
        Test2 value = (Test2) t1.getValue();
        System.out.println(value.getT());
    }

    通配符的使用注意

    通配符的形式和类型参数经常一起使用。

    类型参数的形式可以取代通配符。

    能够使用通配符的人使用通配符,因为通配符在形式上往往更简单,可读性更好。

    本教程操作环境:windows7系统、java10版,DELL G3电脑。

    如果类型参数之间有依赖关系,返回值依赖类型参数,或者需要写作,则只能使用类型参数。

    以上就是java通配符的介绍,希望对大家有所帮助。更多Java学习指路:Java基础

    专题推荐:java通配符
    上一篇:java泛型中类型擦除的转换 下一篇:java动态规划是什么

    相关文章推荐

    • Java泛型中有几种通配符• java Reduce的三种重载• java重复注解如何实现• java中volatile的应用场景• java SPI的使用场景• java SPI如何定义接口• java泛型是什么意思?

    全部评论我要评论

    © 2021 Python学习网 苏ICP备2021003149号-1

  • 取消发布评论
  • 

    Python学习网