zoukankan      html  css  js  c++  java
  • java开发中使用的工厂设计模式

    package gongchangdemo;
    /*
     * 在java开发中使用较多的一种设计模式:工厂模式:就是一个过渡端
     * 通过过度端来取得接口的实例化对象,这个过渡端就称为工厂factory
     * 这个模式主要是为了解决修改子类,必须要修改main方法,而main方法主要是客户端,客户端
     * 经常变来变去不太好,就引进:工厂模式
     */
    public class gongchangdemo {
    public static void main(String args[]) {
        //getinstance 方法是静态的所以可以用类名直接调用
        //fruit f =null ;
        //f = factory.getinstance("apple");
        //f.eat();
        //上面写得apple是固定的,能否通过初始化参数的方法,则可以选择任意的子类去标记
        fruit f = null;
        f = factory.getinstance(args[0]);
        if (f!=null) {
            f.eat();
        }
        
    }
    }
    //写一个接口
    interface fruit{
        //写一个吃的抽象类
        public abstract void eat();
    }
    //写一个子类去实现fruit
    class apple implements fruit{
        public void eat(){
            System.out.println("我在吃苹果");
        }
    }
    //再写一个子类去实现fruit
    class orange implements fruit{
        public void eat(){
            System.out.println("我在吃橘子");
        }
    }
    //写一个过渡端 类factory,获取接口的实例化对象
    class factory{
        //返回 fruit类型的,所以用fruit修饰
        public static fruit getinstance(String classname){
            //先初始化
            fruit f =null;
            //传过来的参数与子类名对比
            if ("apple".equals(classname)) {
                f = new apple();
            }
            if ("orange".equals(classname)) {
                f = new orange();
            }
            return f;
        }
        
    }
  • 相关阅读:
    列表的内置方法
    oracle安装教程
    大二暑假假期周进度01
    win 10安装Linux虚拟机教程
    需求工程——软件建模与分析阅读笔记05
    网络爬虫阅读笔记01
    Java 测试连接Oracle数据库是否成功,ojdbc7.jar包下载
    河北创新年报统计平台系统整体界面展示,与数据下钻
    java 三大框架 struct2部分 实现增删该查操作
    itextsharp生成pdf
  • 原文地址:https://www.cnblogs.com/yuanyuan2017/p/6562009.html
Copyright © 2011-2022 走看看