zoukankan      html  css  js  c++  java
  • 简单工厂模式

    简单工厂模式很容易理解,在项目中用到了一个这样的例子。

    AbstractUMLConnectionModel是一个抽象的父类,它的子类包括:GeneralizationModel,RealizationModel,DependencyModel,AggregationModel,CompositeModel。

    那么好,接下类根据需要我们使用简单工厂实现获得需要的子类对象。(又是父类引用指向子类对象,可见这是多么的重要。)。注意抽象方法的引用也是可以的,接口的引用也可以这样用。

    package com.jenson.vrp.editor.ir.model.operate;
    
    import net.java.amateras.uml.model.AbstractUMLConnectionModel;
    import net.java.amateras.uml.model.AggregationModel;
    import net.java.amateras.uml.model.CompositeModel;
    import net.java.amateras.uml.model.DependencyModel;
    import net.java.amateras.uml.model.GeneralizationModel;
    import net.java.amateras.uml.model.RealizationModel;
    
    public class RelationFactory {
        public static AbstractUMLConnectionModel createRelation(String relationType)
        {
            AbstractUMLConnectionModel connx = null;
            switch (relationType) {
            case "继承":
                connx=new GeneralizationModel();
                break;
            case "实现":
                connx=new RealizationModel();
                break;
            case "依赖":
                connx=new DependencyModel();
                break;
            case "聚合":
                connx=new AggregationModel();
                break;
            case "组合":
                connx=new CompositeModel();
                break;
            default:
                break;
            }
            return connx;
        }
    }
  • 相关阅读:
    微信开发之注册公众号(二)
    我开通个人博客了~~~~
    微信开发之启用开发者模式(三)
    float浮动属性
    数组的定义与特点
    块级元素和行内元素
    对于if判断和switch选择的入门理解
    Form表单
    不知名的作业
    自我介绍
  • 原文地址:https://www.cnblogs.com/wangjiyuan/p/SimpleFactory.html
Copyright © 2011-2022 走看看