Android设计模式——接口隔离原则

本文介绍接口隔离原则(ISP),强调客户端不应依赖不必要的接口,并通过Java中Closeable接口的使用示例,展示如何遵循最小化依赖的原则。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

接口隔离原则

接口隔离原则 InterfaceSegregation Principles ISP

  • 定义:客户端不应该依赖它不需要的接口。
  • 定义2:类间的依赖关系应该建立在最小的接口上。

示例

  • 在java6以前的JDK版本中,存在一个问题,那就是在使用OutpitStream或者其他可关闭的对象之后,我们必须保证它们最终被关闭了
  • 在java中有一个closeable接口,该接口标识了一个可关闭的对象。它只有一个close()方法,通过阅读API方法我们知道,closeable接口有100多个实现类,那么也就是说,我们在使用这100多个类型的对象时,都需要主动去关闭他们。这样会有大量的代码的冗余,降低代码的可拓展性。
  • 所以我们使用依赖closeable抽象而不依赖具体实现

/**
 * Describe:closeable接口实现类的关闭工具
 * wx on 2016/12/28.
 */
public class CloseUtils {
    private CloseUtils() {

    }

    public static final void closeQuietly(Closeable closeable) {
        if (closeable != null) {
            try {
                closeable.close();
            } catch (IOException e) {
                e.printStackTrace();
            }
        }
    }


}

这样建立在最小化依赖原则的基础上,只需要知道这个对象是可以关闭的即可。其它的不需要关心,这就是接口隔离原则。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值