C# & Unity 面向对象补全计划 之 画UML类图(持续更新)

本文仅作学习笔记与交流,不作任何商业用途,作者能力有限,如有不足还请斧正

本系列旨在通过补全学习之后,给出任意类图都能实现并做到逻辑上严丝合缝

学会这套规则,并看完面向对象补全计划文章之后,可以尝试实现任意逻辑的类图了

前置文章:

C# & Unity 面向对象补全计划 之 访问修饰符-CSDN博客

C# & Unity 面向对象补全计划 之 类class-CSDN博客

C# & Unity 面向对象补全计划 之 继承(字段与属性)-CSDN博客

C# & Unity 面向对象补全计划 之 初识继承方法与多态-CSDN博客

C# & Unity 面向对象补全计划 之 接口-CSDN博客

1.类图的规则

我使用的类图软件:

类图规则介绍:

UML访问修饰符

UML属性(对应c#的字段与属性两部分)

举例:

UML方法的参数和返回值

举例:

2.举栗子

2.1类

比如我有一个Computer类,有一系列常见的属性与方法,我就可以画出类图

2.2继承

众所周知,电脑按照形态分为很多种,比如:

Desktop Computer,Laptop/Notebook,All-in-One PC

那么就可以画出子类对父类的继承(只举一个栗子):

代码实现:

cs 复制代码
public class Computer
{
    protected string cpu;
    protected string gpu;
    protected int rom;
    protected int storage;

    protected void UpdateOS()
    {
        // 更新操作系统逻辑
    }

    protected void CheckHardwareStatus()
    {
        // 检查硬件状态逻辑
    }

    protected void InstallSoftware(string software)
    {
        // 安装软件逻辑
    }

    protected void UninstallSoftware(string software)
    {
        // 卸载软件逻辑
    }

    protected void ConnectToNetwork()
    {
        // 连接网络逻辑
    }
}

public class DesktopComputer : Computer
{
    private string CaseType;
    private int MonitorSize;

    private void ReplaceHardware()
    {
        // 更换硬件逻辑
    }

    private void AdjustMonitorSettings()
    {
        // 调整显示器设置逻辑
    }
}

2.3 接口

相关推荐
SomeOtherTime13 小时前
Rust所有权(AI回答)
开发语言·后端·rust
Easyhood13 小时前
Android 开发入门实践(十四):Compose 副作用入门与四个常用 API
android·开发语言·kotlin·android jetpack·compose
白杨尚青14 小时前
C++进阶篇(六):map 和 set 的模拟实现——用红黑树封装 mymap/myset(迭代器 + operator[])
开发语言·c++·迭代器·stl·set·map·红黑树
饮水桶_T18 小时前
JAVA IO流笔记
开发语言·数据结构·算法
Felven20 小时前
C. Brr Brrr Patapim
c语言·开发语言
li星野20 小时前
相位补偿学习记录:把被颅骨“打乱“的声波重新对齐
学习
Z21-X21 小时前
云原生运维学习笔记:ECShop全链路容器化部署与Docker底层资源隔离深度剖析
运维·笔记·学习·云原生
路溪非溪21 小时前
python标准库使用总结
开发语言·python
red_redemption1 天前
自由学习记录(230)
学习
SomeOtherTime1 天前
Rust 面向对象介绍(AI回答)
开发语言·python·rust