一尘不染

为什么应该首选Java类的接口?

java

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

违反情况是“避免使用类似’ArrayList’的实现类型;而应使用接口”。

以下行将纠正违规:

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

为什么要用后者List代替ArrayList?


阅读 328

收藏
2020-02-29

共1个答案

一尘不染

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

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

2020-02-29