医药公司网站建设,广州站,教育培训网站案例,找网站建设公司哪家好1.类图的画法
类
整体是个矩形#xff0c;第一层类名#xff0c;第二层属性#xff0c;第三层方法。 #xff1a;public- : private# : protected空格: 默认的default 对应的类写法。
public class Student {public String name;public Integer age;protected I…1.类图的画法
类
整体是个矩形第一层类名第二层属性第三层方法。 public- : private# : protected空格: 默认的default 对应的类写法。
public class Student {public String name;public Integer age;protected Integer cardId;Integer mark;public void setName(String name) {this.name name;}public String getName() {return name;}
}
抽象类
对比类就是第1层类名和第3层 方法名用斜体表示。 接口
顶层多了interface字段其余好像没啥区别了。 包
里面就是对应包的名字。 对应java写法。
package com.zgxt.demo.domain;public class Student {} 2.类图的关系
如果说,类图为了表现java中的类、接口等属性方法那么类图的关系就代表java中中类、接口之间的关系。 泛化关系
泛化就是Java中的继承。 表示图形实线 空心三角 对应的类关系图。 实现关系
实现就是java中的实现。 表示图形虚线 空心三角。 依赖关系
如果一个类失去一个类代码无法编译那么说这个类依赖于这个类。
具体表现为成员变量、局部变量、方法形参方法返回值。 表示图形虚线箭头。 对应的类关系。
// 小孩
class Child{private Hand hand; // 依赖关系:成员变量也成为关联public void riding(Foot foot){ // 方法形参Bike bike new Bike(hand,foot); // 局部变量}
}
关联关系
2个类依赖关系并且是依赖中的成员变量则存在关联关系。
而且再细分感觉跟MySQL中的外键约束,表设计有异曲同工之妙。
MySQL FOREIGN KEY 外键约束 (w3schools.cn) 表示图形实线箭头、横线箭头。
单向关联 双向关联 聚合
是在依赖的及基础上(成员变量)但是和关联表现的层级不同关联表示同层级之间而聚合表示整体和部分层级之间。
另外: 整体和部分之间可以相互独立存在。
如: 一个公司由老板和员工组成。那么公司和员工关系就是聚合。而老板和员工的关系就是关联。 表示图形:空心菱形 箭头。
代码一个Computer类需要Boss类和Employee类聚合。
而Employee类中的businessTrip[出差]() 方法需要Boss的同意这就是关联。
// 聚合和关联
class Computer{private Boss boss; // 聚合private Employee employee; // 聚合
}class Boss{}class Employee{private Boss boss; // 关联public boolean businessTrip(){// boss同意 return true// boss不同意 return false}
}
对应的图形 组合
区别与聚合组合的整体和部分之间不能独立存在。
如: 人由手、脚、头等身体部位组成但是手离开人、人离开手都不能做相应的方法。 表示图形: 实心菱形 实线箭头。
这个我就不画了。