当我们可以使用默认和静态方法时,接口如何提供100%抽象?

如果我们可以在Interface中使用默认方法和静态方法并在其他类中实现它,那么我们怎么能说该接口实现了100%抽象呢?

shuang890802 回答:当我们可以使用默认和静态方法时,接口如何提供100%抽象?

我们可以说接口实现了100%抽象吗?

我认为我们仍然可以这样说。或者至少我们可以说,接口中的staticdefault使得实现100%抽象 1 变得更加困难。

接口中的static方法与类中的static方法没有什么不同。在这两种情况下,方法API都是方法主体中代码的抽象边界。

我们可以为default方法使用相同的参数。方法主体可以执行接口的所有后代的所有实例的实现所共有的操作,但是细节仍对调用方隐藏。那就是抽象边界。

defaultstatic方法的作用是允许抽象边界在继承图中进一步实现。如果正确使用它们,那将是一件好事,因为它会删除冗余或重复的代码。


1-程序员应设计和实现一个API,以确保它不是泄漏的抽象。仅仅使用接口并不能解决这个问题。

本文链接:https://www.f2er.com/2472846.html

大家都在问