zoukankan      html  css  js  c++  java
  • java源码

    Java泛型中的标记符含义:

    • K - Key(键)
    • V - Value(值)
    • E - Element (在集合中使用,因为集合中存放的是元素)
    • T - Type(Java 类,可做泛型)
    • N - Number(数值类型)
    • ? - 表示任意的java类型 (占位符)
    •  Collection<V>  类型形参
    • 简述泛型通配符:

    • 1.<? extends T>首先你很容易误解它为继承于T的所有类的集合,这是大错特错的,相信能看下去你一定见过或用过List<? extends T>吧?为什么我说理解成一个集合是错呢?如果理解成一个集合那为什么不用List<T>来表示?所以<? extends T>不是一个集合,而是T的某一种子类的意思,记住是一种,单一的一种,问题来了,由于连哪一种都不确定,带来了不确定性,所以是不可能通过 add()来加入元素。你或许还觉得为什么add(T)不行?因为<? extends T>是T的某种子类,能放入子类的容器不一定放入超类,也就是没可能放入T。

      2.<? super T>这里比较容易使用,没<? extends T>这么多限制,这里的意思是,以T类为下限的某种类,简单地说就是T类的超类。但为什么add(T)可以呢?因为能放入某一类的容器一定可以放入其子类,多态的概念。

  • 相关阅读:
    Jenkins发布.Net Core项目到IIS
    2019 SDN上机第2次作业
    2019 SDN上机第1次作业
    第二次结对编程作业
    第3组 团队展示
    第一次结对编程作业
    第一次个人编程作业
    第一次博客作业
    android json解析及简单例子
    详述Google针对Android平板App发布的十大开发准则
  • 原文地址:https://www.cnblogs.com/lgg20/p/11054228.html
Copyright © 2011-2022 走看看