对于将List作为第一个参数的集合中的所有方法,为什么这些方法不仅仅是List接口的一部分?
我的直觉是:给定一个List对象,该对象本身应"知道"如何对自身的操作执行,如rotate(),shuffle()或reverse().但相反,作为一名Java程序员,我必须检查List接口中的方法,以及Collections类中"在那里"的静态方法,以确保我使用规范解决方案.
为什么有些方法作为静态独立方法放在Collections类中,而不是添加到List接口(并且可能因此由某些现有或可能的基类实现)?
我正在努力更好地理解Java集合框架背后的设计决策.
这里有一些令人信服的OO设计原则,我忽略了吗?或者仅仅出于某些实际的性能原因,这种区别是否已经完成