为什么List不是简单地定义为抽象类而不是接口?

Nih*_*rma 4 java collections interface

我们有类似的东西

List lst = new LinkedList();
Run Code Online (Sandbox Code Playgroud)

这表明List是某种类.那么,为什么称它为接口?我们可以简单地将其称为实现Collection的Abstract类.

Ole*_*ksi 8

接口和抽象类用于不同的目的.看到这个问题.

List定义了我们希望列表类型对象具有的一组行为,而不是数据结构层次结构的基础.它不需要指定任何共享行为或类似的东西.它只是简单地说"一切都想把自己称为List应该能够做这些事情"