java - java中的方法如何返回Set?

标签 java set return

我正在从返回 Set 对象的 api 调用一个方法。据我所知,Set是一个接口(interface),并且你不能实例化接口(interface)。我可以获取这个集合并对其调用 toArray() 。那么 Set 实际上返回什么?

最佳答案

它确实返回一个Set,但您必须明白,Set 不仅仅是接口(interface):

可以返回实现 Set 的每个类的每个实现。

public Set getMySet(){
  return new HashSet();
}

由于 HashSet 实现了 Set,因此这是有效的代码。

将应用程序编写到接口(interface)而不是其实现是一种广泛使用的做法。毕竟,您需要编写(和测试)代码(例如使用服务的 UI)的就是接口(interface)。

您还无法获得具体的实现,它们甚至可能还不存在,但您已经可以完成您需要做的所有工作。

关于java - java中的方法如何返回Set?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36334056/

相关文章:

java - java中的并行编程作业

java - 将嵌套列表转换为二维数组

android - 以编程方式设置 Android IP、DNS、GATEWAY 设置

Android:从服务获取结果

Python - 从另一个函数中的函数检索值,而不重新运行原始函数

java - 尝试使用 Spring Boot 2 启动 Gemfire 脉冲时出现 Jackson Cast 异常

java - 两个应用程序运行在同一个 tomcat 上

delphi - 如何获取 Delphi 集类型变量的互补值?

c++ - 设置 (c++) 和运算符 < 重载

c# - 如果在返回字符串的方法中找不到字符串,则返回替代值