UML类图是用于构建和可视化面向对象系统的图形表示。统一建模语言(UML)中的类图是一种静态结构图,它通过显示系统的结构来描述系统的结构:类、它们的属性操作(或方法)以及对象之间的关系。什么是班级?类是对象的蓝图。对象和类齐头并进。我们不能只谈其中一个而不谈另一个。面向对象设计的重点不在对象,而在类,因为我们是用类来创建对象的。所以一个类描述了一个对象将是什么,但它不是对象本身。实际上,类描述了对象的类型,对象是类的可用实例。每个对象都是根据相同的蓝图构建的,因此包含相同的组件(属性和方法)。标准含义是对象是类和对象的实例——对象具有状态和行为。狗的例子有状态——颜色、名字、品种和行为——摇摆、吠叫、吃东西。对象是类的实例。UML类表示法(Symbols)类表示封装了状态(属性)和行为(操作)的概念。每个属性都有一个类型。每个操作都有一个签名。_类名是唯一需要的信息_。类名:类的名称出现在第一个分区中。类属性:属性显示在第二部分。属性类型显示在冒号之后。属性映射到代码中的成员变量(数据成员)。类操作操作(Method方法):操作显示在第三部分。它们是类提供的服务。方法的返回类型出现在方法签名末尾的冒号之后。方法参数的返回类型显示在参数名称后的冒号之后。操作在代码中映射到类方法类可见性(Visibility)类中属性和操作名前的+、-、#符号表示属性和操作的可见性。+表示公共属性或操作-表示私有属性或操作#表示调用者方向的受保护属性或操作。方向性显示在参数名称之前。类图的视角视角的选择取决于您在开发过程中的进展。例如,在制定领域模型时,您很少超越概念观点。分析模型通常混合概念和规范观点。设计模型的开发通常从强调规范的角度开始,然后发展到实现的角度。图可以从多个角度进行解释:概念:表示领域中的概念规范:侧重于软件中抽象数据类型(ADT)的接口实现:描述类将如何实现其接口透视将影响要提供的详细信息量以及值得展示的关系类型。如上所述,类名是唯一需要的信息。类之间的关系(Relationships)UML不仅仅是漂亮的图片。如果使用得当,UML可以准确地传达代码是如何从图表中实现的。如果解释准确,实现的代码将正确地反映设计者的意图。您能否描述每种关系相对于您的目标编程语言的含义,如下图所示?如果您还不能识别UML类关系,则本节不会帮助您理解它们。一个类可能涉及与其他类的一个或多个关系。关系可以是以下类型之一:继承(或泛化):泛化是更一般的分类器和更具体的分类器之间的分类关系。特定分类器的每个实例也是通用分类器的间接实例。因此,特定分类器继承了更一般分类器的特征。表示“是”关系。抽象类名称以斜体显示。SubClass1和SubClass2是超类的特化。下图显示了继承层次结构的示例。SubClass1和SubClass2派生自SuperClass。关系显示为带有从子元素指向父元素的空心箭头的实线。继承示例-形状下图显示了具有两种样式的继承示例。尽管连接器的绘制方式不同,但它们在语义上是等价的。关联(Association)关联是UML类图中类之间的关系。它们由类之间的实线表示。关联通常使用反映现实世界问题领域的动词或动词短语来命名。简单关联两个对等类之间的结构链接。Class1和Class2之间存在关联下图显示了一个简单关联的示例。有一个连接<>类Class1和<>类Class2的关联。该关系显示为连接两个类的实线。Cardinality基数表示为:一对一、一对多、多对多聚合(Aggregation)一种特殊的关联类型。它代表关系的“一部分”。Class2是Class1的一部分。Class2的许多实例(用*表示)可以与Class1相关联。Class1和Class2的对象具有不同的生命周期。下图显示了聚合示例。该关系显示为在关联端连接到表示聚合的类的带有空心菱形的实线。组合一种特殊的聚合体,其中的部分在整体被破坏时被破坏。Class2的对象与Class1一起生死。Class2不能独立存在。下图显示了一个示例组合。关系显示为在连接到代表整体或组合的类的关联端带有实心菱形的实线。依赖性(Dependency)一个类的对象可能在一个方法的代码中使用另一个类的对象。如果对象未存储在任何字段中,则将其建模为依赖项。一种特殊的协会。如果对一个类的定义的更改可能导致对另一个类的更改(反之亦然),则一个类存在于两个类之间。Class1依赖于Class2下图显示了依赖关系的示例。该关系显示为带有空心箭头的虚线。下图显示了依赖关系的另一个示例。一个Person类可能有一个带有Book参数的hasRead方法,如果该人已经读过这本书(可能通过检查某些数据库),该方法返回true。实现实现是蓝图类和包含各自实现级别细节的对象之间的关系。据说该对象实现了蓝图类。也就是说,你可以理解为接口和实现类的关系。例如,所有者接口可以指定获取属性和处理属性的方法。Person和Corporation类需要以可能完全不同的方式实现这些方法。类图示例:OrderSystem类图示例:GUI类图也可能具有附加到类或关系的注释。正在寻找免费的类图工具?VisualParadigmOnline免费版是一款免费的在线绘图软件,支持类图、其他UML图、ERD工具和组织结构图工具。它有一个简单但功能强大的编辑器,可让您快速轻松地创建类图。免费的UML编辑器没有广告、没有访问期限,并且没有图表数量、形状数量等限制。您拥有为个人和非商业用途创建的图表。快速绘制类图免费UML软件免费绘制供个人使用的类图:无限的图表和形状无限的访问时间无广告绘制任意数量的图表。将图形导出为PNG/JPG/GIF/SVG/PDF。简单而强大的UML图可以简单而有趣。以下是我们的类图编辑器的一些功能:拖动以创建形状连接良好的连接器(无拆分)类属性和操作的内联编辑用您自己的形状绘制您自己的图数以百计的图示例和模板引人入胜的令人印象深刻的绘图使用对齐指南精确定位形状。使用一系列格式化工具格式化类图:形状和线条格式、字体样式、可旋转形状、形状对齐和分布、嵌入图像和URL、阴影效果等LAN公司结构理解关系文档输出(归纳使用)电话(协会)GoF设计模式-ProxyGoF设计模式-FlyweightGoF设计模式-Fa?adesGoF设计模式-DecoratorsGoF设计模式-CompositeGoF设计模式-BridgesGoF设计模式-AdapterGoF设计模式-SingletonGoF设计模式-PrototypeGoF设计模式-工厂方法GoF设计模式-构建器GoF设计模式-抽象工厂GoF设计模式-访问者GoF设计模式-模板方法GoF设计模式-策略GoF设计模式-状态GoF设计模式-观察者GoF设计模式-纪念品GoF设计模式-中介GoF设计模式-迭代器GoF设计模式-解释器GoF设计模式-命令GoF设计模式-责任链类图-订单流类图-包的类约束类图-包中的类(航空公司)票务自关联级别和自关联销售订单系统购物车