设计原则:接口隔离原则

作者: 谁家的猪 | 来源:发表于2019-07-11 08:05 被阅读4次

    定义:用多个专门的接口,而不是使用单一的总接口,客户端不应该依赖它不需要的接口
    一个类对一个类的依赖应该建立在最小的接口上
    建立单一接口,不要建立庞大臃肿的接口
    尽量细化接口,接口中的方法尽量少
    注意适度原则,一定要适度
    优点:符合我们常说的高内聚低耦合的设计思想,从而使得类具有很好的可读性、可扩展性和可维护性。

    示例

    会飞的狗?

    代码实现

    1. 创建IAnimalAction接口
    /**
     * @author lijiayin
     */
    public interface IAnimalAction {
        void eat();
        void fly();
        void swim();
    }
    
    1. 创建Dog类
    /**
     * @author lijiayin
     */
    public class Dog implements IAnimalAction {
        @Override
        public void eat() {
            
        }
    
        @Override
        public void fly() {
    
        }
    
        @Override
        public void swim() {
    
        }
    }
    

    3.UML


    UML.png

    狗不会飞

    应该把不同的行为放在不同的接口中

    代码实现

    1. 创建IEatAction接口
    /**
     * @author lijiayin
     */
    public interface IEatAction {
        void eat();
    }
    
    1. 创建IFlyAction接口
    /**
     * @author lijiayin
     */
    public interface IFlyAction {
        void fly();
    }
    
    1. 创建ISwimAction接口
    /**
     * @author lijiayin
     */
    public interface ISwimAction {
        void swim();
    }
    
    1. 修改Dog类
    /**
     * @author lijiayin
     */
    public class Dog implements IEatAction, ISwimAction {
    
        @Override
        public void eat() {
            
        }
    
        @Override
        public void swim() {
    
        }
    }
    
    1. UML类图


      UML.png

    相关文章

      网友评论

        本文标题:设计原则:接口隔离原则

        本文链接:https://www.haomeiwen.com/subject/urykkctx.html