为什么有些API主要提供接口,而不是类?

Pop*_*ops 2 java api interface class

一些Java API提供了大量的接口和很少的类.例如,Stellent/Oracle UCM API由大约80%的接口/ 20%的类组成,并且许多类只是例外.

优先选择接口到类的技术原因是什么?这只是努力减少耦合吗?改善封装/信息隐藏?别的什么?

Eri*_*lje 9

它将最大限度地提高他们在幕后改变底层类的灵活性.

只要接口/契约保持不变,他们就可以随意更改实现类,而不必担心影响使用其库的人员.