简述泛型的上界和下界?
有时候希望传入的类型有一个指定的范围,从而可以进行一些特定的操作,这时候就需要通配符了?在Java中常见的通配符主要有以下几种:
<?>: 无限制通配符 <? extends E>: extends 关键字声明了类型的上界,表示参数化的类型可能是所指定的类型,或者是此类型的子类 <? super E>: super关键字声明了类型的下界,表示参数化的类型可能是指定的类型,或者是此类型的父类 它们的目的都是为了使方法接口更为灵活,可以接受更为广泛的类型. < ? extends E>: 用于灵活读取,使得方法可以读取 E 或 E 的任意子类型的容器对象。 < ? super E>: 用于灵活写入或比较,使得对象可以写入父类型的容器,使得父类型的比较方法可以应用于子类对象。 用简单的一句话来概括就是为了获得最大限度的灵活性,要在表示生产者或者消费者的输入参数上使用通配符,使用的规则就是:生产者有上限(读操作使用extends),消费者有下限(写操作使用super).
简述泛型的上界和下界?相关推荐
- java泛型的上界和下界_java泛型中的上界(extend)和下界(super)
泛型中上界和下界的定义 上界 extend Fruit> 下界 super Apple> 上界和下界的特点 上界的list只能get,不能add(确切地说不能add出除null之外的对象, ...
- java数组的下界,Java泛型_上界extends_下界super
Java泛型_上界extends_下界super ? 通配符类型 extends T> 表示类型的上界,表示参数化类型的可能是T或是T的子类 super T> 表示类型下界(Java C ...
- java 泛型的上界和下界
1.上界 Java 泛型的上界用于限制泛型类型参数必须是某个类型的子类型,通常使用 extends 关键字来表示.下面是一个示例代码,其中 T 的上界是 Comparable<T>,表示 ...
- java 上界和下界,Java 泛型上下界(上下限)
UML 类图,A 继承自 Object,B 继承自 A,C 继承自 B public class Test_2 { public static void main(String[] args) { L ...
- java 上界和下界,Java 泛型之上界下界通配符
Java 泛型之上界下界通配符 Java教程是为JDK 8编写的.本页描述的示例和实践没有利用后续版本中引入的改进. 通配符和子类型 如 泛型,继承和子类型中所述,泛型类或接口仅仅因为它们的类型之间存 ...
- java泛型的上界下界
java泛型的上界下界的demo. import java.sql.Timestamp; import java.util.ArrayList; import java.util.Date; impo ...
- 【Java数据结构】泛型详解+图文,通配符上界、下界
0. 泛型的本质 0. 泛型的目的 1. 泛型的语法 1.1 泛型的使用 2. 包装类 2.1 装箱和拆箱 2.2.1练习题 3 .泛型如何编译 4.泛型的上界 5. 通配符 5.1通配符上界 5.2 ...
- 上界与下界-- 视图界定--协变与逆变
1.上界与下界:Upper bound,lower bound 作用:规定泛型的取值范围 Int x ...
- Scala中协变(+)、逆变(-)、上界(:)、下界(:)简单介绍
对于一个带类型参数的类型,比如 List[T],如果对A及其子类型B,满足 List[B]也符合List[A]的子类型,那么就称为covariance(协变) , 如果 List[A]是 List[B ...
最新文章
- 美国再出半导体新法案!1800亿谋求芯片制造振兴
- Win32汇编最简ComboBox Demo
- 1.18.5.流式概念、动态表(Dynamic Table)、DataStream上的关系查询、动态表 连续查询(Continuous Query)、在流上定义表、处理时间
- BCEWithLogitsLoss的使用案例
- mysql-bin.000001文件的来源及处理方法[转]
- mysql查询语句出现sending data耗时解决
- python json转换与处理
- java入门之IDE开发工具:简介·下载·安装
- win10超好看的鼠标主题,你也来试试吧
- 细说php在哪买,细说PHP
- 图书馆管理系统-登录流程
- Ubuntu 16.04 单显卡安装Nvidia驱动+GTX750显卡安装CUDA 9.1+cuDNN 7.1.3
- 黑鲨重装计算机安装无法继续,图解黑鲨装机大师装机失败无法开机怎么办?
- linux电脑外放没声音,ubuntu 16.04安装好后没声音的解决方法
- few-shot vid2vid部署安装及测试
- 至强cpu能装linux吗,至强四核CPU Xeon 安装Linux系统后 能利用到4个核吗?
- python换脸开源_Python实现AI换脸功能
- Java 当前日期判断节假日
- Startup通过3D打印制造更便宜、更轻的火箭 | 广东省智能创新协会
- SecureCRSecureFX8.1中文绿色免安装版