zoukankan      html  css  js  c++  java
  • 静态工厂实例代码

    package net.esrib.Factory;
    //静态工厂实现
    interface Car{ //车的接口类
        public void run();
        public void stop();
      }
    
    class Benz implements Car{ //奔驰车类
        public void run(){
          System.out.print("Benz 开动了。。。");
        }
        public void stop(){
          System.out.print("Benz 停车了。。。");
        }
    }
    
      class Ford implements Car{ //福特车类
          public void run(){
            System.out.print("Ford 开动了。。。");
          }
          public void stop(){
            System.out.print("Ford 停车了。。。");
          }
      }
    
    
    class Factory{//工厂类,加入其它类型的车类也不用修改工厂类
      public static Car getCarInstance(String type){//根据type类型来得到不同的车
        Car c = null;
        try {
          //通过JAVA的反射机制实例化实现类,给出完整的 “包.类”名称
          //这里要类型转换
          c = (Car) Class.forName("net.esrib.Factory.FactoryDemo." + type).
              newInstance();
        }
        catch (ClassNotFoundException ex) {
        }
        catch (IllegalAccessException ex) {
        }
        catch (InstantiationException ex) {
        }
        return c;
      }
    }
    
    public class FactoryDemo {
      public static void main(String [] args){
           Car c=Factory.getCarInstance("Benz");
        }
    }
    

      

  • 相关阅读:
    流光shader 和 流光+扭曲shader
    unity3d android动态更新dll
    Shader之溶解效果的几种实现方法
    我的第一个法线贴图
    windows 函数
    MFC 消息框
    C++ MFC棋牌类小游戏day1
    C++STL 预定义函数对象和函数适配器
    C++STL 函数对象和谓词
    C++STL 算法
  • 原文地址:https://www.cnblogs.com/cyjch/p/2340429.html
Copyright © 2011-2022 走看看