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

列表与ArrayList

何华灿
2023-03-14
问题内容
List<EventHandler<E>> listeners = new List<EventHandler<E>>();

为何以上行失败:

无法实例化类型 List<EventHandler<E>>

但这一项有效:

ArrayList<EventHandler<E>> listeners = new ArrayList<EventHandler<E>>();

问题答案:

正确的方法是:

List<EventHandler<E>> listeners = new ArrayList<EventHandler<E>>();
  • 通过其接口List)引用对象
  • 使用其具体类型(ArrayList)实例化对象(无法实例化接口)


 类似资料:
  • 问题内容: 作为C ++老朋友,我设法解决了我的问题,但是我无法在这里围绕底层的Java机制: 问题答案: 是一个接口,有点像带有C ++中某些方法的类。您无法实例化它。 但是“继承” (或用Java术语实现),因此这些引用是分配兼容的。

  • 问题内容: 我有一个清单: 要从此列表中获取,有两种方法: 1。 2。 我的问题是,哪一个内存效率高且迭代速度快? 问题答案: 他们做同样的事情- 增强的循环对于长版本来说只是语法糖(对于可迭代对象;对于数组,它稍有不同)。除非您明确需要迭代器(例如,调用),否则我将使用第一个版本。 有关编译器执行的准确转换的更多详细信息,请参见Java语言规范的14.14.2节。

  • 问题内容: 我已经进行了很多编程工作,最近开始学习更多纯粹的计算机科学主题(用于工作面试)。 我知道Array和LinkedList数据结构之间的区别,但是现在我已经开始使用Java,我看到了这个ArrayList,在概念上我遇到了麻烦。 网络搜索仅真正向我展示了如何使用它们以及何时使用它们(每种优点),但是没有任何东西可以回答我的问题: 什么是ArrayList?我的假设是,它是一个维护对每个元

  • 我试图序列化和反序列化类的列表(vb),显然里面只有派生类的实例。 我用修饰了list参数,获得如下输出: 但是当我反序列化它时,我一直说他不能反序列化抽象类。 http://james.newtonking.com/json/help/index.html?topic=html/SerializeTypeNameHandling.htm 删除注释行它可以工作!

  • 问题内容: 该方法返回的表示形式。这里返回的对象是数组支持的,但不是对象。 我正在寻找对象返回值与对象之间的差异- 一种快速的来源,可以告诉它们而无需深入研究代码。 TIA。 问题答案: 当您调用Arrays.asList时,它不会返回。它返回一个由原始源数组支持的固定大小列表。换句话说,它是使用Java的基于集合的API公开的数组的视图。 您不能向其中添加元素,也不能从中删除元素。如果您尝试从中

  • 问题内容: 创建这两个对象有什么区别 和 和之间的实际区别是什么?都是吗?是否存在性能差异或使用理由之间存在差异? 问题答案: 您编写的两条语句分别构造一个对象以容纳字符串列表,然后将其分配给变量。区别在于变量的类型。 通过将赋给type变量,您只能访问接口中可用的方法,其中包括对元素的入队和出队的支持。如果您需要编写一个使用队列进行各种操作并希望通过使用链表实现该队列的程序,这将很有用。 通过将