尚硅谷设计模式学习---[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类图]的主要内容,如果未能解决你的问题,请参考以下文章

尚硅谷设计模式学习---[单例模式]

尚硅谷设计模式学习---[设计模式七大原则]

尚硅谷设计模式学习---[装饰者模式]

尚硅谷设计模式学习---[桥接模式(Bridge)]

尚硅谷设计模式学习(23)---[策略模式(strategy pattern)]

尚硅谷设计模式学习(11)---[外观模式(Facade)]