将UML类图转换为C#代码:我编写的代码是否合规?
UML类图转C#代码合规性检查
提供的UML类图

你编写的C#代码
internal class Task:Organizer { public string Name { get; } public string Description { get; set; } public int Priority { get; set; } private bool done=false; public bool Done { get { return done; } set { done = value;} } }
代码与UML类图的差异分析
- 类的访问修饰符:UML未显式标注类可见性时默认是
public,但你将Task定义为internal,不符合UML默认规则。 - Done成员的实现:UML里的
Done是公共方法(+ Done() : boolean),但你写成了可读写属性,这和UML定义不符。按照UML要求,需实现为返回bool类型的无参方法,而非属性。 - 匹配正确的部分:
Name:public只读属性,和UML中{readOnly}的设定完全一致,没问题。Description、Priority:public可读写属性,与UML定义匹配,正确。done:private字段初始化为false,和UML里的私有成员定义一致,没问题。
内容的提问来源于stack exchange,提问作者nino
相关产品推荐
相关产品推荐

