类图到底该如何画

目录

一、前言

二、内容

2.1、什么是类图?

2.2、类图的组成:

2.3、类之间的关系:

2.4、绘制类图的格式:

2.5、至于为什么有了接口还要增加一层抽象类?

2.6、接口与类的设计原则

接口:接口隔离原则

类:单一职责原则

三、总结


一、前言

本文将详细介绍类图应该如何画,如何画好一张类图。

二、内容

2.1、什么是类图?

要学习如何画类图的话那么我们首先要明确一下什么是类图?

顾名思义,类图是显示了模型的静态结构,特别是模型中存在的类、类的内部结构以及它们与其他类的关系等。类图不显示暂时性的信息。类图是面向对象建模的主要组成部分。它既用于应用程序的系统分类的一般概念建模,也用于详细建模,将模型转换成编程代码。

2.2、类图的组成:

类名、属性、方法

2.3、类之间的关系:

继承、实现、依赖、关联、组合、聚合

2.4、绘制类图的格式:

类:

接口: 

抽象类: 

需要注意的地方:

  • 接口一定有 <<interface>> 的标识,接口中的方法必须斜体(默认都是抽象方法)
  • 抽象类名和抽象方法必须斜体,非抽象方法不斜体
  • 注意访问控制符、返回值、参数等格式的正确性
  • 类中属性、方法要描述全面
  • 类中使用注解或者new的方式声明的其他类的成员变量也是该类的属性:
  • 原因一:对此类本身而言,此类的类内结构包括属性(成员变量)和方法(成员方法)
  • 原因二:对类间关系而言,虽然这个类与其他类(这个类声明其他类对象)之间有关联(或其他关系),但是这个关系是体现在类间的。

为使程序灵活、可扩展、可复用的角度出发,将程序service层架构设为3层,接口 -> 抽象类 -> 实现类。

2.5、至于为什么有了接口还要增加一层抽象类?

观点1:抽象类是接口与实现类之间的桥梁。

让抽象类去实现接口,而不是每个实现类去实现接口,实现类一致的行为(或者说大部分一致的行为)在抽象类中进行实现,而不一致的行为(或者一小部分不一致的行为),在抽象类中写成抽象方法,让子类去重写,减少子类重写接口所有方法的负担。

2.6、接口与类的设计原则

接口:接口隔离原则

接口应该尽量细化,一个接口对应一个功能模块。使接口轻便灵活,而不是臃肿不堪。要求“尽量使用多个专门的接口”,专门的接口是指提供给每个模块的都应该是单一接口(即每个模块对应一个接口),而不是建立一个庞大臃肿的接口来容纳所有客户端访问。

类:单一职责原则

代码中的具体体现,一个类中只能有一个 public 方法,而其他 private 方法都是为这一个 public 方法服务。也就是,对于外界来说,只能有一个方法仅供外界访问。

三、总结

接口和抽象类的区别?这个问题,相信大家从语法角度都能说上来1、2、3,我们学习一个技术不能只光会用就完了,要从思想上去总结统一:接口是自上向下的,因为它不用去管谁要去实现的,它是一种规范,是一种约束,但凡实现了该接口的类,从方法定义上去进行约束,而抽象类是自下向上的,抽象抽象,就是在几个不同的东西中找出相同的东西来,比如:狗、猫、老鼠等,这些都是动物,它们都有皮肤颜色这个属性,这些东西是有了狗、有了猫、有了老鼠之后抽象出来动物这么一个东西,是先有下层后有的上层,所以说抽象类是自下向上的;

评论 16
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

丸子还是团子

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值