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

问题描述 投票:0回答:1

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

java oop interface abstraction
1个回答
0
投票

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

我认为我们仍然可以这样说。或者至少可以说,接口中的staticdefault使得实现100%抽象的难度变得更大[<1]。static方法与类中的static方法没有区别。在这两种情况下,方法API都是方法主体中代码的抽象边界。 我们可以为default方法设置相同的参数。方法主体可以执行接口的所有后代的所有实例的实现所共有的操作,但是细节仍对调用方隐藏。那就是抽象边界。

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


1-编程人员应设计和实现API而不是泄漏的抽象。简单地使用接口并不能解决这个问题。
最新问题
© www.soinside.com 2019 - 2025. All rights reserved.