我正在阅读一个问题,下面给出了方法的签名

public static List super E> doIt(List nums)

我无法解码语法.我对仿制药很陌生,无法理解

这部分.第一部分< E扩展了CharSequence>都告诉E应该是什么

作为参数和返回类型.但我确实看到列表了吗?超级E&gt ;,这定义了

返回类型的范围.有人可以通过示例帮助我理解这一点吗?

谢谢.

解决方法:

告诉E将成为CharSequence的子类型.这告诉编译器将传递给此方法的type参数将是CharSequence或该类型的子类型.这种类型的绑定称为参数绑定.我已经写了an article关于这个话题,如果愿意的话,可以查看一下.

List super E>

告诉此方法将返回一个元素列表,其类型将为E或其父类型.

因此,可以从您的doIt方法返回以下所有类型-

// trivial one.

return new ArrayList();

// If F is a super type of E, then the following line is valid too.

return new ArrayList();

// The following will also be valid, since Object is a super type of all

// other types.

return new ArrayList();

列表&lt ;?超级E -这通常称为逆变. Check this out.

标签:generics,java

来源: https://codeday.me/bug/20191030/1968369.html

java 语法 泛型_java-解密泛型语法相关推荐

  1. java 文件通配符_Java中泛型通配符的使用方法示例

    本文实例讲述了Java中泛型通配符的使用方法.分享给大家供大家参考,具体如下: 一 点睛 引入通配符可以在泛型实例化时更加灵活地控制,也可以在方法中控制方法的参数. 语法如下: 泛型类名 extend ...

  2. java中什么时候不能用泛型_java中泛型的正确使用姿势

    image.png 泛型是Java中一个非常重要的知识点,在Java集合类框架中泛型被广泛应用.利用好泛型,在系统架构中是一把利器. 泛型类 先看一个例子,restful架构中,需要定义api接口返回 ...

  3. java之泛型_java之泛型

    什么是泛型? 泛型是JDK1.5新加入的,解决数据类型的安全性问题,其主要原理是在类声明时通过一个标识表示类中某个属性的类型或者是某个方法的返回值及参数类型.这样在类声明或实例化时只要指定好需要的具体 ...

  4. java支持泛型_Java自学-泛型 支持泛型的类

    Java 如何设计支持泛型的类 步骤 1 : 不支持泛型的Stack 以Stack栈为例子,如果不使用泛型 当需要一个只能放Hero的栈的时候,就需要设计一个HeroStack 当需要一个只能放Ite ...

  5. java 泛型方法 实例化_Java让泛型实例化的方法

    泛型对象可以实例化吗? 不可以,T t=new T()是不可以的,编译器会报错.由于泛型擦除,编译器在编译时无法确定泛型所对应的真实类型 解决方法 使用反射新建实例 Type superclass = ...

  6. java interface泛型_java – 使用泛型和接口实现组合

    我正在努力实现以下目标: 我的类X有一个通用的Y.然而,这个泛型Y需要访问X的资源,我想通过接口来处理它,以便允许其他人继承任意选择的类. 然而,我目前的方法会产生一系列泛型: public inte ...

  7. java 通配符 泛型_java中泛型之类型通配符(?)

    实体类 package cn.xy.model; /** * 生物类 * @author xy * */ public class Living { private String name; publ ...

  8. java 类型通配符_java中泛型之类型通配符(?)

    实体类 package cn.xy.model; /** * 生物类 * @author xy * */ public class Living { private String name; publ ...

  9. java 语法检查_Java中的语法检查

    小编典典 从Java 6开始,您可以使用JavaCompiler编译文本并取回Diagnostic对象,这些对象将告诉您文件有什么问题(如果有).因此,对于您的示例,您需要获取编辑器的内容并将其传递给 ...

  10. java的语法结构_Java中的语法规范语法结构

    1,关键字:其实就是某种语言赋予了特殊含义的单词. 保留字:其实就是还没有赋予特殊含义,但是准备日后要使用过的单词. 2,标示符:其实就是在程序中自定义的名词.比如类名,变量名,函数名.包含 0-9. ...

最新文章

  1. Depth Bias
  2. 2017年中国人工智能产业专题研究报告(完整版)
  3. 最常用的CURL命令大全
  4. java+mysql中文乱码问题
  5. 鸿蒙台湾乌龙茶,郭碧婷生女再闹乌龙?向太守口如瓶,向佐有意回避,其实另有隐情...
  6. 【机器学习算法-python实现】扫黄神器-朴素贝叶斯分类器的实现
  7. Py之pycocotools:pycocotools库的简介、安装、使用方法之详细攻略
  8. 怎样修改云钱宝的实名认证_和平精英实名认证怎么修改 灵敏度怎么设置
  9. Android手机mm开头的大文件,[2018年最新整理]2Android源代码编译命令m和mm和mmm以及make分析.doc...
  10. 数据处理--One Hot Encoding
  11. 改变人类社会的五位数学大家
  12. python消息框设置_Python Tkinter消息框(附带实例讲解)
  13. Thumb指令集与ARM指令集的区别
  14. 数据包络分析DEA有哪些指标?
  15. 学习笔记|复杂嵌套的三目表达式如何分割?
  16. PureMVC框架知识介绍
  17. MT6765/MT6762/MT6761芯片平台支持EVS-SWB?
  18. thinkphp5 域名路由
  19. python工资津贴的计算和排序-Python:如何排序(sort)
  20. java_获得用户显示器大小

热门文章

  1. c语言malloc用法 数组,详解C语言用malloc函数申请二维动态数组的实例
  2. Win7旗舰版打不开任务管理器怎么办
  3. 微软:Win11很受欢迎、正式版将于秋季如期发布
  4. java获取net地址 本机
  5. 悖论对计算机科学影响,数学和计算机科学的核心逻辑悖论
  6. c语言高低位拷贝_C语言指针详解
  7. 无法删除所有指定的值_AutoCAD所有系统变量大全
  8. 三星s7不能运行java_在调试模式下启动时Android应用程序崩溃
  9. c和java内存泄漏区别_内存溢出和内存泄漏的区别(转)
  10. MySQL优化建议汇总~~~