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

接口隔离原则

接口隔离原则 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();
            }
        }
    }


}

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

你可能感兴趣的:(android)