社区
Java
帖子详情
怎样用面向对象的方式设计一个带有多个步骤的流程呢?
javavm
2003-09-29 08:55:57
有多个流程,这些流程中有很多步骤都是相同的,我应该如何设计呢?
...全文
115
18
打赏
收藏
怎样用面向对象的方式设计一个带有多个步骤的流程呢?
有多个流程,这些流程中有很多步骤都是相同的,我应该如何设计呢?
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
18 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
icecloud
2003-10-16
打赏
举报
回复
command模式
类似于filters的实现
liushenling
2003-10-16
打赏
举报
回复
1。设一个步骤类,(即节点类,包括,该步骤的名称,前提步骤,。。。)
2。设计一个流程类,包含很多步骤,且步骤之间用任务驱动!
无名2018
2003-10-16
打赏
举报
回复
UP
学而优则仕2
2003-10-10
打赏
举报
回复
如果你没有用对象的观点,在你的眼里就只有过程而没有这些职责的承担者---对象,也就没有类了。那还谈什么java?
所以,你应该重新分析你的问题,而不是在过程的驱动下寻找算法。这些过程行为谁来完成?可以抽象为一个类还是多个?如果是多个其关系如何?
有了承担责任的对象,过程行为就可以赋给相应的类来实现。比如假定有一个计算器,如果我要作加法运算,需要先输入一个数,按+,在输入一个数;如果我要做减法,就需要在中间按-。这些方法或者说功能需要计算器对象都有了相关的定义,然后根据接受的不同信息用不同的方法实现。
至于约束流程中各个步骤的顺序,要么在运行前能够描述和表达出来,要么在运行时能够通过一定的规则进行判断(你至少需要把规则表达出来)。
这些问题都清楚了以后,在用java实现的时候才可以去考虑如何应用一些设计模式之类的经验来达到设计规范化和满足其他一些设计要求。
qiume
2003-10-08
打赏
举报
回复
呵呵,抽象类!!!
aalup
2003-10-08
打赏
举报
回复
to fangsoft() :
我是你的学生
yiningchen
2003-10-08
打赏
举报
回复
用所谓的command或者State模式不是很好么?我觉得command的描述在这里可能有歧义,但是State的描述听上去和你说得很吻合。只是你的说明不是很清楚。
XmanDZJ
2003-10-07
打赏
举报
回复
建议采用command模式,形成一个command链,将各个流程作为一个单独的用例进行封装即可
fangsoft
2003-10-05
打赏
举报
回复
先建模,后设计.
fangsoft,
2003,10,5
swinging
2003-10-02
打赏
举报
回复
引用:
=======================
例如流程一的步骤为:a,b,c,d,e,f
而流程二的步骤为:a,b,d,e,g。
========================
如果只是考虑对流程的不同方式的组装,可以考虑使用Command模式。
wingnal
2003-10-02
打赏
举报
回复
这都不会呀!
anyh
2003-10-01
打赏
举报
回复
我觉得你自己还没把问题弄清 至少你的问题没有表达清楚,比如你说的约束条件是什么?
javavm
2003-09-30
打赏
举报
回复
各位帮我想想拉,谢谢
javavm
2003-09-30
打赏
举报
回复
其实我最关心的问题是如何约束流程中步骤的顺序,例如流程一的步骤为:a,b,c,d,e,f
而流程二的步骤为:a,b,d,e,g。如果仅仅在某个类中提供这些步骤的方法,而没有其他的约束条件,是没法实现我的要求的。
happyegg
2003-09-30
打赏
举报
回复
1。 需要保存状态的话,你可以把这些状态变量做成参数传入传出。
2。如果这些流程都有相似之处的话,那就做一个基类,提供很多的处理方法,所有的流程都继承这个父类,这样,状态变量就在子类里面,需要处理的时候调用父类方法
jbluesun
2003-09-29
打赏
举报
回复
其实每个class里面的编程还是过程性的,如果实在不能设计出更多的class,你就把那些相同的步骤抽取出来做成这个class的一个method吧。
javavm
2003-09-29
打赏
举报
回复
我的流程是需要保存状态的,用静态的没法实现吧
happyegg
2003-09-29
打赏
举报
回复
把相同的步骤抽取出来,创建一个util的类来存放。然后其他的步骤就使用这个util类的方法来做相同的动作。这个不关设计模式的事,是OOP编程思想方面的。
这些方法最好做成static的
Vision-Language-Region-Grounding-Auditor-v1.0-原创源码与文档.zip
原创开发工具源码合集,包含可直接运行的完整源码、自动化测试、离线示例、HTML/JSON/SVG 报告、运行截图、README、使用说明、功能清单、MIT License 与原创声明。适合前端、JavaScript、AI 工具开发与工程实践学习,解压后按 README 即可运行。
Android期末大作业,校园失物招领App应用,采用微信风格 UI
设计
,使用 SQLite 本地数据库存储
校园失物招领 Android 应用,采用微信风格 UI
设计
,使用 SQLite 本地数据库存储 所有数据,无需网络即可使用。 功能特性 用户系统 用户注册(用户名 2-20 位,支持字母/数字/下划线/中文,密码 3-20 位) 用户登录/登出,支持游客模式浏览 个人资料编辑(修改用户名、密码) 基于 SharedPreferences 的会话持久化,应用重启自动恢复登录状态 失物招领 发布失物/招领信息,支持标题、描述、联系
方式
、图片 编辑已发布的物品信息 物品状态流转:进行中 → 已找到 → 已归还(支持回退) 分页加载(每页 10 条),滚动到底部自动加载更多 六维筛选:全部/进行中/已找到/已归还/寻物/招领 关键词搜索(模糊匹配标题、描述、联系
方式
、发布者) 诚信承诺机制:发布前必须勾选承诺 图片功能 支持系统图片选择器 自动压缩至最大 1024×1024,JPEG 质量 85% 图片保存至应用私有目录 手势缩放预览(PhotoView 库) 自动清理超过 30 天的旧图片 评论系统 发表评论(内容限制 500 字) 评论正序/倒序切换 删除评论(仅评论者或管理员)
基于 空调-电动汽车 联合虚拟储能的海岛微电网优化调度(Matlab代码实现)
内容概要:本文提出了一种基于“空调-电动汽车”联合虚拟储能的海岛微电网优化调度方法,旨在解决海岛地区可再生能源消纳难与电力供应不稳定的问题。通过充分利用空调负荷的热惰性与电动汽车的灵活充放电能力,构建联合虚拟储能系统,等效替代物理储能装置,实现对风电、光伏等间歇性电源出力波动的平抑。研究建立了融合需求响应机制与多时间尺度调度框架的优化模型,并采用Matlab进行仿真验证。结果表明,该策略能够有效提升微电网对分布式能源的接纳能力,降低系统综合运行成本,增强供电可靠性与能源利用效率。; 适合人群:具备一定电力系统分析、优化建模及Matlab编程基础,从事微电网、综合能源系统、虚拟储能、需求响应等领域研究的科研人员与工程技术人员,特别适合研究生及以上学历的研究者。; 使用场景及目标:①应用于海岛、偏远孤岛等孤立微电网场景,提升可再生能源渗透率与系统韧性;②为高比例新能源接入的配电网提供低成本、高灵活性的虚拟储能解决方案;③实现空调与电动汽车等柔性负荷的协同优化,达成削峰填谷、降低能耗与运行成本的目标; 阅读建议:建议结合Matlab代码深入理解模型构建与求解过程,重点关注虚拟储能建模逻辑、温控负荷动态特性刻画、电动汽车充放电约束处理以及多时间尺度滚动优化的实现机制,可进一步拓展至碳交易、绿证激励等复合政策情景下的优化调度研究。
YOLO算法建筑工地工人个人防护装备目标检测数据集-548张-包含 VOC 和 Yolo 格式标签-支持多种算法训练模型.zip
页面底部可查看数据集可视化效果; 该数据集可直接接入YOLOv5s/v5m/v5l、YOLOv8n/v8s/v8m、YOLOv10n/v10s、yolo11等轻量级至中型骨干网络进行端到端训练,支持从零训练(from scratch)与迁移学习(fine-tuning)两种模式;可直接使用
YOLO算法室内热成像篮球框目标检测数据集-260张-包含 VOC 和 Yolo 格式标签-支持多种算法训练模型.zip
页面底部可查看数据集可视化效果; 该数据集可直接接入YOLOv5s/v5m/v5l、YOLOv8n/v8s/v8m、YOLOv10n/v10s、yolo11等轻量级至中型骨干网络进行端到端训练,支持从零训练(from scratch)与迁移学习(fine-tuning)两种模式;包含voc格式和yolo格式标签可直接使用
Java
51,407
社区成员
86,105
社区内容
发帖
与我相关
我的任务
Java
Java相关技术讨论
复制链接
扫一扫
分享
社区描述
Java相关技术讨论
java
spring boot
spring cloud
技术论坛(原bbs)
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章