Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/258.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C#UML类图_C#_.net_Winforms_Class - Fatal编程技术网

C#UML类图

C#UML类图,c#,.net,winforms,class,C#,.net,Winforms,Class,我正在为我的项目编写一个类图,但不确定是否应该在该图中包含重写的ToString()方法 另外,如何在图上表示重写的方法 例如 public override String SalesPrice() 好的,我终于找到了我提到的那本书(我很快就要搬家了,所以它已经打包好了) 在UML中,继承被称为泛化,它只显示两个框,一个指向另一个,没有属性 我假设,由于您在基类中定义了该方法,因此您不必在继承它的类中定义该方法 但是,有一个地方规定,操作定义为: “可见性名称(参数):返回类型{propert

我正在为我的项目编写一个类图,但不确定是否应该在该图中包含重写的ToString()方法

另外,如何在图上表示重写的方法

例如

public override String SalesPrice()

好的,我终于找到了我提到的那本书(我很快就要搬家了,所以它已经打包好了)

在UML中,继承被称为泛化,它只显示两个框,一个指向另一个,没有属性

我假设,由于您在基类中定义了该方法,因此您不必在继承它的类中定义该方法

但是,有一个地方规定,操作定义为:

“可见性名称(参数):返回类型{properties}”

至于物业:

“财产

指定任何与参数相关的属性,并在大括号之间指定。这些属性通常在特定模型的上下文中定义“

虽然属性看起来更像是参数而不是实际的方法,但您可能可以对此稍加捏造

现在,对于接口:

在接口部分下,它明确指出“实现”接口的类必须有自己的实现。因此,简而言之,我将向类图中添加任何被重写的方法。否则,实现您的关系图的人可能不会意识到他们需要覆盖它


我用它作为我的参考。pg的20,28,30通常你不需要在UML类图上包含任何额外的细节,比如方法是“重写的”或“虚拟的”等等

但是如果你想这样做,我被告知它应该用抽象类(斜体书写)的相同方式来表示/像这样使用“箭头”

<<Override>>
<<Virtual>>

因此,按照你的例子:

+ SalesPrice (): <<Override>> : String
+saleprice()::字符串
在超类中,您需要指定如下内容:

+ SalesPrice (): <Virtual>> : String
+saleprice():>:字符串

这是学校的项目吗?如果不是-只需从IDE为文档自动生成图表,就不要手动生成(无论如何都不会使用)。如果是-问你的老师他是否想要包含重写方法,并遵循他的惯例。我不知道你可以这么做,谢谢你指出,我会查一下,但是的,我只是想练习使用UML图,你知道我将如何在图上表示重写方法吗?谢谢你的回复::不确定它是旧的还是别的什么,但我拥有它,它很好。@RadioSpace ok ty,会检查出来的谢谢你回复我,所以最后的属性部分,我会在这里指定它是重写方法吗?好的,你可以。我不认为这是违反规则,但也许是违反规则。我相信这一节是关于操作参数的。但是我觉得在那个区域标记一个重写的方法是非常可读的。好的,谢谢你,我现在就这么做,然后下周再问我的一位导师,再次感谢