保姆级教程--类图怎么画

类图怎么画

类与类之间的关系
类和类之间存在着六种关系 由弱到强分别是 依赖<关联<聚合<组合<实现=继承
相对应的 每一种类的关系在类图里面都有一种画法来表示

首先是依赖 这是一种什么关系呢 就好像人使用用计算机一样 在人这个类里面用到了计算机 那么 我们就可以说二者是依赖关系。
在这里插入图片描述
我们使用虚线+箭头 箭头指向的是被使用的类

其次是关联什么意思呢 就好像对象间的引用 一个类和另外一个类的联系 比如妻子和丈夫 老师和学生 学生和课程 但是关联也是有单向和双向的 比如 学生是和课程关联 但是 课程不和学生关联 学生需要用到课程 但是课程不需要学生 注意 上面的关联和依赖 引用和使用的区别 大概的意思就是 一个是作为方法的变量进来 一个是作为类的属性进来指向大(地位)的(谁被依赖谁地位比较大嘛)
这里老师有很多学生 同时学生也有很多老师 所以是双向依赖 但是课程不和学生关联 因为学生不是课程的属性

然后就是聚合 什么是聚合呢?就好像大雁和雁群一样 一只只大雁组成了雁群 但是大雁又能脱离大雁存在 这里就提到大雁和大雁本身了 大雁的翅膀组成了大雁这个个体 他的翅膀不能再分(不要杠大雁的翅膀能被拆了之类的 不是重点)所以 这两个又算一组 这里还是使用学校主题的图片吧
在这里插入图片描述
这里老师组成了学校 很明显是一种聚合的关系 并不是说老师走了学校就干不下去了。我们使用的是空心菱形 指向总体(大的)
在这里插入图片描述
这里是人体由头组成 明显是一种强的聚合关系 两个不能脱离开来 因此我们使用实心菱形表示组成

最后两种就是实现泛化 这两个和我们平常的使用java的类之间的实现和继承没什么区别 两个的强弱也基本相同
在这里插入图片描述
多提一嘴 的就是实现接口需要使用虚线
而继承类就是用实线 指向实现或者是继承的类(指向大(辈分)的)
在这里插入图片描述
总而言之 两个一组 关系从松到紧 指向大的
然后类由三层构成 第一层是类名 第二层是属性 第三层是方法 如果是接口的话就只有两层 而且 要在第一层标注是接口 左边写名字 右边写返回值的类别 或者是属性的类别。 到这里为止 基本上类图能看明白了 还有类基本上画一画是没什么问题了。

  • 142
    点赞
  • 825
    收藏
    觉得还不错? 一键收藏
  • 9
    评论
当涉及到 Vue DHTMLX-Gantt 导出 Excel 的保姆完整教程时,以下是一步一步的指南: 1. 确保您的项目中已经安装了 Vue 和 DHTMLX-Gantt。如果尚未安装,请使用以下命令进行安装: ```bash npm install vue dhtmlx-gantt ``` 2. 在您的 Vue 组件中引入所需的库和样式: ```javascript import 'dhtmlx-gantt'; import 'dhtmlx-gantt/codebase/dhtmlxgantt.css'; ``` 3. 创建一个 Vue 组件,并在模板中添加一个 Gantt 图表和一个按钮: ```html <template> <div ref="ganttContainer" style="width: 100%; height: 600px;"></div> <button @click="exportData">导出 Excel</button> </template> <script> import * as XLSX from 'xlsx'; import FileSaver from 'file-saver'; export default { mounted() { const ganttContainer = this.$refs.ganttContainer; gantt.init(ganttContainer); // 设置 Gantt 图表的配置和数据 // 示例数据 const tasks = [ { id: 1, text: '任务1', start_date: '2022-01-01', duration: 5, progress: 0.5 }, { id: 2, text: '任务2', start_date: '2022-01-06', duration: 4, progress: 0.2 }, // 其他任务... ]; gantt.parse({ data: tasks }); }, methods: { exportData() { const gantt = this.$refs.ganttContainer.$gantt; const tasks = gantt.getDatastore('task').getItems(); // 将任务数据转换为 Excel 数据格式 const data = tasks.map((task) => { return { id: task.id, text: task.text, start_date: task.start_date, duration: task.duration, progress: task.progress, }; }); // 创建 Excel 文件 const worksheet = XLSX.utils.json_to_sheet(data); const workbook = XLSX.utils.book_new(); XLSX.utils.book_append_sheet(workbook, worksheet, 'Gantt Data'); const excelBuffer = XLSX.write(workbook, { bookType: 'xlsx', type: 'array' }); const excelData = new Blob([excelBuffer], { type: 'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet' }); // 下载 Excel 文件 FileSaver.saveAs(excelData, 'gantt_data.xlsx'); }, }, }; </script> <style> /* 可选的样式 */ </style> ``` 4. 在上述示例代码中,需要注意以下部分: - 在 `mounted` 钩子中,使用 `gantt.init(ganttContainer)` 初始化 Gantt 图表,并根据您的需求设置其配置和数据。 - `exportData` 方法用于将 Gantt 图表数据导出到 Excel。确保在 `exportData` 方法中的 `this.$refs.ganttContainer.$gantt` 是对 Gantt 图表组件的正确引用。 - 点击 "导出 Excel" 按钮时,将会生成一个名为 `gantt_data.xlsx` 的 Excel 文件,其中包含了 Gantt 图表的数据。 这就是使用 Vue DHTMLX-Gantt 导出 Excel 的保姆完整教程。希望对您有所帮助!如果您有任何其他问题,请随时提问。
评论 9
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值