gpt4 book ai didi

java - 为什么首选 Java 类的接口(interface)?

转载 作者:IT老高 更新时间:2023-10-28 13:51:23 27 4
gpt4 key购买 nike

PMD会报告以下违规行为:

ArrayList<Object> list = new ArrayList<Object>();

违规是“避免使用像 'ArrayList' 这样的实现类型;改用接口(interface)”。

以下行将纠正违规行为:

List<Object> list = new ArrayList<Object>();

为什么要使用带有List的后者而不是ArrayList

最佳答案

在具体类型上使用接口(interface)是良好封装和松散耦合代码的关键。

在编写自己的 API 时遵循这种做法甚至是一个好主意。如果这样做,您稍后会发现向代码中添加单元测试(使用 Mocking 技术)以及在将来需要时更改底层实现会更容易。

这是 good article关于这个主题。

希望对你有帮助!

关于java - 为什么首选 Java 类的接口(interface)?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/147468/

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