当前位置: 首页 > 面试题库 >

什么是语法?

苏建安
2023-03-14
问题内容

我无法理解以下语法:

public class SortedList< T extends Comparable< ? super T> > extends LinkedList< T >

我看到SortedList类扩展了LinkedList。我只是不知道

T extends Comparable< ? super T>

手段。

到目前为止,我对它的理解是类型T必须是实现Comparable的类型…但这是什么< ? super T >


问题答案:

泛型中的super与extends相反。并不是说可比对象的泛型类型必须是T的子类,而是要说它必须是T的超类。区别很重要,因为extends告诉您可以从类中得到什么(至少可以得到,也许是子类)。super告诉您可以添加到类中的内容(最多是这个,也许是超类)。

在这种特定情况下,要说的是该类型必须实现其自身或它的超类的可比对象。因此,请考虑java.util.Date。它实现Comparable<Date>。但是java.sql.Date呢?它也实现Comparable<java.util.Date>

没有超级签名,SortedList将无法接受java.sql.Date的类型,因为它不实现自身的Comparable,而是实现其自身的超类。



 类似资料:
  • 本文向大家介绍JSP中的scriptlet是什么,其语法是什么?,包括了JSP中的scriptlet是什么,其语法是什么?的使用技巧和注意事项,需要的朋友参考一下 脚本可以包含任意数量的JAVA语言语句,变量或方法声明或在页面脚本语言中有效的表达式。 以下是Scriptlet的语法- 您可以编写与上述语法等效的XML,如下所示- 您编写的任何文本,HTML标记或JSP元素都必须在scriptlet

  • 正式学习 Python 之前,我们有必要先搞清楚【 编程语言】这个概念。 在我们很小的时候,父母就教我们开口说话,也教我们如何理解别人讲话的意思。经过长时间的熏陶和自我学习,我们在不知不觉中学会了说话,也能听懂其他小朋友说话的意思,于是我们开始用语言与他人交流。 世界上存在许多种语言,包括汉语、英语、日语、俄语等等,每种语言都有固定的格式,比如汉语(中国话),每个汉字代表着不同的意思,我们必须正确

  • 本文向大家介绍什么是汇编语言,包括了什么是汇编语言的使用技巧和注意事项,需要的朋友参考一下  汇编语言(assembly language)是一种用于电子计算机、微处理器、微控制器或其他可编程器件的低级语言,亦称为符号语言。在汇编语言中,用助记符(Mnemonics)代替机器指令的操作码,用地址符号(Symbol)或标号(Label)代替指令或操作数的地址。在不同的设备中,汇编语言对应着不同的机器

  • 问题内容: 我正在将一个较旧的应用程序移植到Xcode 7 beta,并且我的动画出现错误: 无法使用类型为’(Double,delay:Double,options:nil,animations:()-> _,completion:nil)的参数列表调用’animateWithDuration’ 这是代码: 这在Xcode 6中有效,因此我假设这是Swift中的更新。所以我的问题是: anima

  • 本文向大家介绍什么是Perl编程语言?,包括了什么是Perl编程语言?的使用技巧和注意事项,需要的朋友参考一下 Perl是一种通用编程语言,最初是为文本处理而开发的,现在用于各种任务,包括系统管理,Web开发,网络编程,GUI开发等。 Perl是一种稳定的跨平台编程语言。 尽管Perl并不是正式的缩写,但很少有人将其用作实用提取和报告语言。 它用于公共和私营部门的关键任务项目。 Perl是一种开放

  • 本文向大家介绍 什么是通用语言(UL)?相关面试题,主要包含被问及 什么是通用语言(UL)?时的应答技巧和注意事项,需要的朋友参考一下 如果你必须定义通用语言(UL),那么它是特定域的开发人员和用户使用的通用语言,通过该语言可以轻松解释领域。 通用语言必须非常清晰,以便将所有团队成员处于同一水平线上,并以机器可以理解的方式进行翻译。