zoukankan      html  css  js  c++  java
  • Factory(简单的工厂模式)

    一句话总结:用一个方法来代替new关键字
    解决什么问题:对象产生过多,或者经常有子类替换生成。
    项目里面怎么用:对于经常生成的对象,或者父子类替换的对象。
    模式结构:写一个对外声明的方法,方法里面使用new关键字代替。
    框架里面使用:spring的核心就是工厂模式。

    工厂方法模式:
    有四个角色,抽象工厂模式,具体工厂模式,抽象产品模式,具体产品模式。不再是由一个工厂类去实例化具体的产品,而是由抽象工厂的子类去实例化产品

    // 抽象产品角色
    public interface Moveable {
        void run();
    }
    // 具体产品角色
    public class Plane implements Moveable {
        @Override
        public void run() {
            System.out.println("plane....");
        }
    }
    //扫把
    public
    class Broom implements Moveable { @Override public void run() { System.out.println("broom....."); } }
    // 抽象工厂 交通工具
    public abstract class VehicleFactory {
        abstract Moveable create();
    }
    // 具体工厂
    public class PlaneFactory extends VehicleFactory {
        public Moveable create() {
            return new Plane();
        }
    }
    public class BroomFactory extends VehicleFactory {
        public Moveable create() {
            return new Broom();
        }
    }
    // 测试类
    public class Test {
        public static void main(String[] args) {
            VehicleFactory factory = new BroomFactory();
            Moveable m = factory.create();
            m.run();
        }
    }
  • 相关阅读:
    Kali视频学习21-25
    20159315《网络攻防实践》第六周学习总结
    Kali视频学习16-20
    20159315《网络攻防实践》第五周学习总结
    一个PE文件的逆向分析
    一个好玩的CTF题
    对于安卓锁屏中知识点小结
    安卓系统安全措施
    安卓防逆向、防动态分析、渗透测试及加固
    安卓组件漏洞防护注意事项
  • 原文地址:https://www.cnblogs.com/wanjun-top/p/12689862.html
Copyright © 2011-2022 走看看