gpt4 book ai didi

java - 使用对集合的接口(interface)引用

转载 作者:行者123 更新时间:2023-12-01 06:47:06 24 4
gpt4 key购买 nike

我们使用对集合的接口(interface)引用。它只是为了良好的编码实践还是背后有一些逻辑?谁能解释一下?

例如:

我们使用

Map<String, Integer> map = new HashMap<String,Integer>();

代替

HashMap<String, Integer> map = new HashMap<String,Integer>();

最佳答案

拥有接口(interface)将允许您在未来透明地更改实现(无需在客户端进行太多更改)。

例如:

Map<String, Integer> map = new LinkedHashMap<String,Integer>();

即使您将实现更改为 LinkedHashMap,客户端也不需要在其端进行任何更改。

如果你使用

HashMap<String, Integer> map = new HashMap<String,Integer>();

客户端与实现紧密耦合。如果您更改实现,那么您还需要更改客户端。

一个缺点是,如果您想使用任何特定于实现的方法,您需要转换为相应的类型并使用它。

关于java - 使用对集合的接口(interface)引用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12535968/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com