当前位置: 首页 > news >正文

惠州建网站服务/360提交网站收录入口

惠州建网站服务,360提交网站收录入口,app的ui设计案例分析,怎样在手机上制作网站工厂模式关注的是创建对象的结果,策略模式关注的是创建对象的过程。 1、工厂模式 介绍 专门负责将大量有共同接口的类实例化,工厂模式可以动态的决定将哪一个类进行实例化,不必事先知道要实例化那一个类。 工厂模式的3中形态 简单工厂模式&am…

工厂模式关注的是创建对象的结果,策略模式关注的是创建对象的过程。

 

1、工厂模式

介绍

  专门负责将大量有共同接口的类实例化,工厂模式可以动态的决定将哪一个类进行实例化,不必事先知道要实例化那一个类。

工厂模式的3中形态

  简单工厂模式,又称为静态工厂方法模式。

  工厂方法模式,又称为多态性工厂模式。

  抽象工厂模式,又称为工具箱模式。

示例代码

package main;public interface Operation {int operate(int num1, int num2);
}
Operation接口
package main.Impl;import main.Operation;public class AddOperation implements Operation {@Overridepublic int operate(int num1, int num2) {return num1 + num2;}
}
AddOperation实现类
package main.Impl;import main.Operation;public class MultiOperation implements Operation {@Overridepublic int operate(int num1, int num2) {return num1 * num2;}
}
MultiOperation实现类
package main;public enum OperationEnum {Add, MINUS, MULTI, DIVIDE;
}
OperationEnum枚举
public class FactoryUtils {public static Operation createOperation(OperationEnum operationEnum){switch (operationEnum){case Add:return new AddOperation();case MULTI:return new MultiOperation();}return null;}
}
FactoryUtils简单工厂
public class OperationTest {public static void main(String[] args){int num1 = 100;int num2 = 200;Operation addOperation = FactoryUtils.createOperation(OperationEnum.Add);int addResult = addOperation.operate(num1, num2);System.out.println("args = [" + addResult + "]");Operation multiOperation = FactoryUtils.createOperation(OperationEnum.MULTI);int multiResult = multiOperation.operate(num1, num2);System.out.println("args = [" + multiResult + "]");}
}
OperationTest测试类

 

2、策略模式

介绍

  策略模式定义了算法家族,分别封装起来,让他们之间可以相互替换;此模式让算法的变化,不会影响到使用算法的客户。

策略模式三个角色

  抽象策略,定义个抽象类或接口,并个给出具体策略的接口。

  具体策略,抽象策略的实现类,具体实现了相关的算法和行为。

  环境类,持有一个策略的引用。

示例代码

package main;public interface OperationStrategy {int operate(int num1, int num2);
}
OperationStrategy策略接口
package main.Impl;import main.OperationStrategy;public class AddStrategy implements OperationStrategy {@Overridepublic int operate(int num1, int num2) {return num1 + num2;}
}
AddStrategy实现类
package main.Impl;import main.OperationStrategy;public class SubstractionStrategy implements OperationStrategy {@Overridepublic int operate(int num1, int num2) {return num1 - num2;}
}
SubstractionStrategy实现类
package test;import main.Impl.AddStrategy;
import main.Impl.OperationContext;
import main.Impl.SubstractionStrategy;public class StrategyTest {public static void main(String[] args){OperationContext addContext = new OperationContext(new AddStrategy());addContext.executeOperate(100, 200);OperationContext subContext = new OperationContext(new SubstractionStrategy());subContext.executeOperate(100, 200);}
}
StrategyTest测试类

 

转载于:https://www.cnblogs.com/vincenshen/p/10925284.html

http://www.lbrq.cn/news/1566325.html

相关文章:

  • 吉林建设厅网站首页/百度一下首页设为主页
  • 专门做网站的公司/网络营销成功案例有哪些
  • 上海做网站cnsosu/百度首页 百度
  • wordpress内容新窗口打开/玉溪seo
  • 承德住房和城乡建设局网站关闭了/seo网站推广方案策划书
  • 互联网做网站排明/发新闻稿平台
  • iis7发布静态网站/东莞网络推广营销公司
  • discuz做的网站/品牌营销策划书
  • 县政府网站建设/重庆网站建设技术外包
  • 福州网站建设网络公司排名/怎么做百度推广平台
  • 两学一做网站进不去/合肥seo关键词排名
  • 微网站开发报价/个人网页生成器
  • 网站等级保护测评必须做吗/搜索网
  • 北京b2c网站建设/自动引流推广app
  • 贵阳网站建设技术托管/短视频seo排名
  • 曲靖网站建设/百度竞价ocpc投放策略
  • 怎么建免费网站/百度权重查询爱站网
  • 收到一张网站服务费怎么做凭证/品牌策划方案怎么写
  • 深圳网域官网/手机网络优化软件
  • 杭州互联网公司排名/广州网站优化公司排名
  • 做网站熊掌号/上海牛巨微网络科技有限公司
  • 百合网网站建设与策划/seo优化服务价格
  • 国际交友网站怎么建设/建立网站的步骤
  • 网站制作top/山东seo优化
  • 做外贸的网站有那些/资源网站优化排名软件公司
  • 肇庆网站建设制作公司/女性广告
  • 怎么做网站推广六安/北京疫情最新新闻
  • 仓山网站建设/网站首页快速收录
  • 现在还做自适应网站/你对网络营销的理解
  • 网站建设与网页设计总结/职业培训机构资质
  • 代码随想录Day50:图论(图论理论、深度搜索理论、所有可达路径、广度搜索理论)
  • 前端框架选择之争:jQuery与Vue在现代Web开发中的真实地位-优雅草卓伊凡
  • PostgreSQL 免安装
  • Cherryusb UAC例程对接STM32 SAI播放音乐和录音(上)=>SAI+TX+RX+DMA的配置与音频回环测试
  • 双椒派E2000D网络故障排查指南
  • 一条n8n工作流