尚硅谷设计模式学习---[UML类图]
Posted 小智RE0
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了尚硅谷设计模式学习---[UML类图]相关的知识,希望对你有一定的参考价值。
🚀🚀🚀尚硅谷传送门==>B站尚硅谷Java设计模式
❤❤❤感谢尚硅谷❤❤❤
🛴🛴🛴最近开始计划学习一下设计模式了,加油!!!
目录
UML类图
UML——Unified modeling language UML(统一建模语言),用来表示设计思路.
在https://www.iodraw.com/
制图软件中也可使用UML类图.
其中,类图
描述类和类之间的关系 ;是UML的核心.
类与类之间的关系可分为 依赖
,泛化(继承)
;实现
;关联
;聚合
;组合
类图举例
public class Person{
private Integer id;
private String name;
public void setName(String name){
this.name=name;
}
public String getName(){
return name;
}
}
用UML类图表示即:
主要注意的是,在UML图中,变量的类型在后,方法的参数类型在后,方法的返回值类型也在后.
类和类之间的依赖关系(Dependence)
即一个类用到了另一个类,
例如A类中用到了B类;就说A类依赖B类.
可以是类的成员属性,方法的返回类型;方法接收的参数类型;在方法体中用到.
案例
public class PersonServiceBean {
private PersonDao personDao;
public void save(Person person){ }
public IDCard getIDCard(Integer personid){
return null;
}
public void modify(){
Department department = new Department();
}
}
public class PersonDao{}
public class IDCard{}
public class Person{}
public class Department{}
类与类之间的泛化关系(继承)(Generalization)
泛化关系就是继承关系; 依赖关系特例
案例
public abstract class DaoSupport{
public void save(Object entity){}
public void delete(Object id){ }
}
//继承;
public class PersonServiceBean extends Daosupport{
}
类与类之间的实现关系(Implementation)
实现关系也是依赖关系的特例
一个类实现了一个接口
类与类之间的关联关系(Association)
关联具有导航性质
;具有双向或者单向关系;
关联具有多重性; 一对一;多对一, 多对多
单向一对一关系
案例;
一个人有一个身份证
public class Person {
private IDCard card;
}
public class IDCard{}
双向一对一关系
案例
一个人有一个身份证;
这个身份证可以证明这个人的信息.
public class Person {
private IDCard card;
}
public class IDCard{
private Person person;
}
类与类之间的聚合关系(Aggregation)
聚合表示整体与部分的关系;整体和部分可以分开
是关联关系的特例
案例;
电脑有显示器和鼠标;显示器和鼠标单独也可以取出来.
//电脑类;
public class Computer{
//鼠标属性;
private Mouse mouse;
//显示器属性;
private Monitor monitor;
public void setMouse(Mouse mouse){
this.mouse=mouse;
}
public void setMonitor(Monitor monitor){
this.monitor=monitor;
}
}
//鼠标类;
public class Mouse{}
//显示器类;
public class Monitor{}
类与类之间的组合关系(Composition)
组合也表示整体与部分的关系;整体和部分不可以分开
案例
人的身份证可以和人分开,但是头部作为人体的组成部分是不能分开的;
注意:若Person类中定义要对IDCard进行级联删除,即删除Person时连同IDCard一起删除,那么IDCard 和 Person 就是组合关系;
通俗地说组合关系就是同生共死的关系
public class Person{
private IDCard card;
private Head head = new Head();
}
//身份证类;
public class IDCard{}
//头部类;
public class Head{}
设计模式分类
设计模式是某类问题的通用解决方案
- 创建型模式:单例模式、抽象工厂模式、原型模式、建造者模式、工厂模式。
- 结构型模式:适配器模式、桥接模式、装饰模式、组合模式、外观模式、享元模式、代理模式。
- 行为型模式:模版方法模式、命令模式、访问者模式、迭代器模式、观察者模式、中介者模式、备忘录模式、解释器模式(Interpreter模式)、状态模式、策略模式、职责链模式(责任链模式)
以上是关于尚硅谷设计模式学习---[UML类图]的主要内容,如果未能解决你的问题,请参考以下文章