zoukankan
html css js c++ java
北风设计模式课程---4、工厂模式在实际中的应用(写一个计算器程序)
北风设计模式课程---4、工厂模式在实际中的应用(写一个计算器程序)
一、总结
一句话总结:
计算器程序操作符号很多,这一部分可以弄成面向对象,便于扩展(开闭原则中的开)和维护(开闭原则中的闭)
1、什么情况下适合用面向对象?
情况多的时候,适合用面向对象,方便扩展,比如计算器的操作符
2、计算器程序面向过程怎么写?
1.接受控制台输入
2.进行运算
3.返回结果
3、计算机程序面向过程写法的缺点是什么?
操作符号很多,不便于扩展,也不便于保证原有类不被修改
4、计算器程序 怎么用 面向对象 来实现?
操作基类(抽象类),里面个操作数1和操作数2两个属性,还有一个getResult方法
有操作基类,每一个操作都是操作基类的子类,实现里面的getResult方法
5、计算器程序 怎么用 简单工厂模式 实现?
操作基类,这样每增加一个操作,都能符合开闭原则的扩展
将操作符判断弄到操作工厂里面去
6、计算器程序 怎么用 工厂方法模式 实现?
在简单工厂模式的基础上将 工厂变成抽象类, 具体的操作通过工厂的子类来完成
7、用工厂方法模式 实现 计算机程序的时候,MainClass调用那里要做的是什么?
要根据操作符号判断 调用 哪一个 操作工厂
8、开闭原则的好处是什么?
开:便于扩展
闭:便于维护
二、内容在总结中
1、相关知识
2、java代码目录结构
查看全文
相关阅读:
Linux(Contos7.5)环境搭建之JDK1.8安装(二)
python微信域名或者链接批量检测
表单设计器3-查询面板
表单设计器2-表格布局
表单设计器1-基本操作
信息无障碍国内标准
信息无障碍国际标准
信息无障碍服务对象
信息无障碍定义
E8.Net工作流开发问题
原文地址:https://www.cnblogs.com/Renyi-Fan/p/10947408.html
最新文章
使用.NET Core 2.1的Azure WebJobs
c# 调用7za.exe执行压缩命令
windows搭建rabbitmq ha
windows console 控制台自启动
删除n天前的文件或文件夹 bat批处理
基于.net core webapi和mongodb的日志系统
linux centos7 erlang rabbitmq安装
centos7 lua安装
NPOI+反射+自定义特性实现上传excel转List及验证
appcmd创建站点、应用程序、虚拟目录批处理程序
热门文章
.NET Excel导出方法及其常见问题详解
java web 3.1-web.xml文件配置
spring boot+mybatis+swagger搭建
spring-boot+swagger实现WebApi文档
Maven打包jar类库
mybatis学习(一)
MariaDB远程连接问题
FileZilla-FTP连接失败
以太网身份验证拨号连接
Linux(Contos7.5)环境搭建之Gitblit安装(三)
Copyright © 2011-2022 走看看