美文网首页
2018-02-25 java对类的方法加强(二)

2018-02-25 java对类的方法加强(二)

作者: 紫杉叶子 | 来源:发表于2018-02-25 21:59 被阅读0次

    装饰设计模式

    • 满足 两个条件

    1.装饰者和被装饰者实现同样的接口或者父类
    2.被装饰者 必须要 传递给 装饰者 -----装饰者持有对被装饰者的引用

    @Test
        public void test2() {
            
            DecratorCat cat = new DecratorCat(new Cat());
            
            cat.run();
        }
    
    
    interface ICat{
        public void run();  
    }
    
    
    //被装饰者
    class Cat implements ICat{
        
        public void run() {
            
            System.out.println("小猫在黑暗中抓住了一只老鼠....");
            
            
        }
        
    }
    
    //装饰者
    class DecratorCat implements ICat{
        
        private ICat cat;
        
        public DecratorCat(ICat cat) {
            
            this.cat = cat;
            
            
        }
        
        
        @Override
        public void run() {
            //调用原有的逻辑
            cat.run();
            
            //同时可以添加自己的逻辑
            System.out.println("但是小猫今天牙疼.....");
            
        }
    }
     
    

    相关文章

      网友评论

          本文标题:2018-02-25 java对类的方法加强(二)

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