gpt4 book ai didi

java - Java 8 中的接口(interface)隔离原则和默认方法

转载 作者:行者123 更新时间:2023-12-02 15:53:35 26 4
gpt4 key购买 nike

根据接口(interface)隔离原则

clients should not be forced to implement the unwanted methods of an interface

...所以我们应该定义接口(interface)以进行逻辑分离。

但是 Java 8 中引入的默认方法提供了在 Java 接口(interface)中实现方法的灵 active 。看来Java 8已经提供了增强接口(interface)的可行性,使其具有一些与其核心逻辑无关的方法,但具有一些默认或空的实现。

这不违反ISP吗?

最佳答案

好问题。当然,它违反了接口(interface)隔离原则,而且我个人不喜欢默认实现的概念,因为它破坏了接口(interface)设计的美感,并且也破坏了精确的多态性。如果有人不了解 ISP 的概念,那么他们就会开始设计胖接口(interface),最终会像所有东西都封装在一个接口(interface)中一样。在代码设计的时候,人们也不会进行逻辑思考。

这最终会产生代码异味,我相信那些不了解这些概念的人会开始编写糟糕的代码。我相信默认实现是一个不需要的功能,因为它会导致人们编写有味道的代码。

关于java - Java 8 中的接口(interface)隔离原则和默认方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46377594/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com