UML状态图的两个问题
展开全部
你需要先理解什么是状态、状态的分类。
状态分为简单状态和组合状态。
比如:电话通话中是一个简单状态,电话振铃也是一个简单状态,这两个状态又可统称为电话忙状态(组合状态)。
从简单状态来看,转移条件只需要一个条件就够了。
但对于组合状态未必,但组合状态最终还是由简单状态来体现的,所以,归根结底的说,状态转移只需要一个条件。
第二个问题,最终状态和初始状态并不是真正的状态,而是UML为了问题描述的方便引入的两个“伪状态”。
只要对象的生命周期结束,就可说这个对象的状态随之结束。
所以只要对象的生命周期有不同的结束形式,就对应的多个最终状态。
比如对于“网上选课系统”中的“课程对象”,学期结束对应一个最终状态。
但有时候,你运行“选课系统”的目的仅仅是为了修改一门课程的信息,修改完毕后,其生命周期随之结束,对应着一个最终状态。
所以对于“最终状态”,你要抓住一个实质:对象生命周期的终结。
虽然有多种最终状态,但本质是一样的。
至于正常结束和非正常结束,你不必太较真,这是UML2.0复杂冗余的一种表现,UML2.0有好多不合理的地方,比如“对象图”,没有什么作用,基本上已被废弃。
状态分为简单状态和组合状态。
比如:电话通话中是一个简单状态,电话振铃也是一个简单状态,这两个状态又可统称为电话忙状态(组合状态)。
从简单状态来看,转移条件只需要一个条件就够了。
但对于组合状态未必,但组合状态最终还是由简单状态来体现的,所以,归根结底的说,状态转移只需要一个条件。
第二个问题,最终状态和初始状态并不是真正的状态,而是UML为了问题描述的方便引入的两个“伪状态”。
只要对象的生命周期结束,就可说这个对象的状态随之结束。
所以只要对象的生命周期有不同的结束形式,就对应的多个最终状态。
比如对于“网上选课系统”中的“课程对象”,学期结束对应一个最终状态。
但有时候,你运行“选课系统”的目的仅仅是为了修改一门课程的信息,修改完毕后,其生命周期随之结束,对应着一个最终状态。
所以对于“最终状态”,你要抓住一个实质:对象生命周期的终结。
虽然有多种最终状态,但本质是一样的。
至于正常结束和非正常结束,你不必太较真,这是UML2.0复杂冗余的一种表现,UML2.0有好多不合理的地方,比如“对象图”,没有什么作用,基本上已被废弃。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
七鑫易维信息技术
2024-09-02 广告
2024-09-02 广告
Play Video 七鑫易维是致力于机器视觉和人工智能领域的高新科技企业,迄今已专注眼球追踪技术的研发、创新与应用超过14年,拥有完全自主知识产权,全球专利总量500余项。 作为眼球追踪技术领域的全球知名品牌,七鑫易维的产品体系覆盖眼动分...
点击进入详情页
本回答由七鑫易维信息技术提供
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询