zoukankan      html  css  js  c++  java
  • 第十七章 适配器模式

    适配器模式:将一个类的借口转换成客户希望的另外一个接口。

    应用场景:系统的数据和行为都正确,但接口不符时,我们应该考虑使用适配器模式,目的是使控制范围之外的一个原有对象与某个接口匹配。主要应用于希望复用一些现存的类,但是接口又与复用环境要求不一致的情况。

    注意:应该注意其应用场景,不能本末倒置。

    /**
     * Created by hero on 16-4-4.
     */
    public abstract class Player {
        private String name;
    
        public abstract void attack();
    
        public Player(String name) {
            this.name = name;
        }
    
        public String getName() {
            return name;
        }
    
        public void setName(String name) {
            this.name = name;
        }
    }
    /**
     * Created by hero on 16-4-4.
     */
    public class Forward extends Player {
        @Override
        public void attack() {
            System.out.println("forward player " + getName() + " attack.");
        }
    
        public Forward(String name) {
            super(name);
        }
    }
    /**
     * Created by hero on 16-4-4.
     */
    public class ForeignCenter {
        private String name;
    
        public void 进攻() {
            System.out.println("外籍中锋 " + name + " 进攻");
        }
    
        public ForeignCenter(String name) {
            this.name = name;
        }
    }
    /**
     * Created by hero on 16-4-4.
     */
    public class Translator extends Player {
        private ForeignCenter center;
    
        @Override
        public void attack() {
            center.进攻();
        }
    
        public Translator(String name) {
            super(name);
            center = new ForeignCenter(name);
        }
    }
    public class Main {
    
        public static void main(String[] args) {
            Player hhd = new Forward("hhd");
            hhd.attack();
            Player ym = new Translator("ym");
            ym.attack();
        }
    }
  • 相关阅读:
    NWERC 2016 F. Free Weights
    Gym 101142C CodeCoder vs TopForces 【dfs】
    HDU 6186 number number number 【规律+矩阵快速幂】
    UVA 10048 Audiophobia 【floyd】
    Fully Connected Layer:全连接层
    Artificial Neural Networks:人工神经网络
    Back Propagation:误差反向传播算法
    Gradient Descent:梯度下降
    Regularization:正则化
    softmax loss function:归一化指数函数
  • 原文地址:https://www.cnblogs.com/littlehoom/p/5353252.html
Copyright © 2011-2022 走看看