使用mermaid画类图

文章目录

  • 使用mermaid画类图
    • 1.类与类之间的关系
    • 2.各种关系的强弱顺序

1.类与类之间的关系

mermaid类图关系语法

  • 泛化(Inheritance)

    • 一种继承关系,表示一般与特殊的关系,它指定了子类如何特化父类的所有特征和行为。例如:老虎是动物的一种,即有老虎的特性也有动物的共性。
    • 箭头指向:带三角箭头的实线子类指向父类
    • mermaid语法: A --|> B
#mermaid-svg-vJ80AeAgofaVnFcr .label{font-family:'trebuchet ms', verdana, arial;font-family:var(--mermaid-font-family);fill:#333;color:#333}#mermaid-svg-vJ80AeAgofaVnFcr .label text{fill:#333}#mermaid-svg-vJ80AeAgofaVnFcr .node rect,#mermaid-svg-vJ80AeAgofaVnFcr .node circle,#mermaid-svg-vJ80AeAgofaVnFcr .node ellipse,#mermaid-svg-vJ80AeAgofaVnFcr .node polygon,#mermaid-svg-vJ80AeAgofaVnFcr .node path{fill:#ECECFF;stroke:#9370db;stroke-width:1px}#mermaid-svg-vJ80AeAgofaVnFcr .node .label{text-align:center;fill:#333}#mermaid-svg-vJ80AeAgofaVnFcr .node.clickable{cursor:pointer}#mermaid-svg-vJ80AeAgofaVnFcr .arrowheadPath{fill:#333}#mermaid-svg-vJ80AeAgofaVnFcr .edgePath .path{stroke:#333;stroke-width:1.5px}#mermaid-svg-vJ80AeAgofaVnFcr .flowchart-link{stroke:#333;fill:none}#mermaid-svg-vJ80AeAgofaVnFcr .edgeLabel{background-color:#e8e8e8;text-align:center}#mermaid-svg-vJ80AeAgofaVnFcr .edgeLabel rect{opacity:0.9}#mermaid-svg-vJ80AeAgofaVnFcr .edgeLabel span{color:#333}#mermaid-svg-vJ80AeAgofaVnFcr .cluster rect{fill:#ffffde;stroke:#aa3;stroke-width:1px}#mermaid-svg-vJ80AeAgofaVnFcr .cluster text{fill:#333}#mermaid-svg-vJ80AeAgofaVnFcr div.mermaidTooltip{position:absolute;text-align:center;max-width:200px;padding:2px;font-family:'trebuchet ms', verdana, arial;font-family:var(--mermaid-font-family);font-size:12px;background:#ffffde;border:1px solid #aa3;border-radius:2px;pointer-events:none;z-index:100}#mermaid-svg-vJ80AeAgofaVnFcr .actor{stroke:#ccf;fill:#ECECFF}#mermaid-svg-vJ80AeAgofaVnFcr text.actor>tspan{fill:#000;stroke:none}#mermaid-svg-vJ80AeAgofaVnFcr .actor-line{stroke:grey}#mermaid-svg-vJ80AeAgofaVnFcr .messageLine0{stroke-width:1.5;stroke-dasharray:none;stroke:#333}#mermaid-svg-vJ80AeAgofaVnFcr .messageLine1{stroke-width:1.5;stroke-dasharray:2, 2;stroke:#333}#mermaid-svg-vJ80AeAgofaVnFcr #arrowhead path{fill:#333;stroke:#333}#mermaid-svg-vJ80AeAgofaVnFcr .sequenceNumber{fill:#fff}#mermaid-svg-vJ80AeAgofaVnFcr #sequencenumber{fill:#333}#mermaid-svg-vJ80AeAgofaVnFcr #crosshead path{fill:#333;stroke:#333}#mermaid-svg-vJ80AeAgofaVnFcr .messageText{fill:#333;stroke:#333}#mermaid-svg-vJ80AeAgofaVnFcr .labelBox{stroke:#ccf;fill:#ECECFF}#mermaid-svg-vJ80AeAgofaVnFcr .labelText,#mermaid-svg-vJ80AeAgofaVnFcr .labelText>tspan{fill:#000;stroke:none}#mermaid-svg-vJ80AeAgofaVnFcr .loopText,#mermaid-svg-vJ80AeAgofaVnFcr .loopText>tspan{fill:#000;stroke:none}#mermaid-svg-vJ80AeAgofaVnFcr .loopLine{stroke-width:2px;stroke-dasharray:2, 2;stroke:#ccf;fill:#ccf}#mermaid-svg-vJ80AeAgofaVnFcr .note{stroke:#aa3;fill:#fff5ad}#mermaid-svg-vJ80AeAgofaVnFcr .noteText,#mermaid-svg-vJ80AeAgofaVnFcr .noteText>tspan{fill:#000;stroke:none}#mermaid-svg-vJ80AeAgofaVnFcr .activation0{fill:#f4f4f4;stroke:#666}#mermaid-svg-vJ80AeAgofaVnFcr .activation1{fill:#f4f4f4;stroke:#666}#mermaid-svg-vJ80AeAgofaVnFcr .activation2{fill:#f4f4f4;stroke:#666}#mermaid-svg-vJ80AeAgofaVnFcr .mermaid-main-font{font-family:"trebuchet ms", verdana, arial;font-family:var(--mermaid-font-family)}#mermaid-svg-vJ80AeAgofaVnFcr .section{stroke:none;opacity:0.2}#mermaid-svg-vJ80AeAgofaVnFcr .section0{fill:rgba(102,102,255,0.49)}#mermaid-svg-vJ80AeAgofaVnFcr .section2{fill:#fff400}#mermaid-svg-vJ80AeAgofaVnFcr .section1,#mermaid-svg-vJ80AeAgofaVnFcr .section3{fill:#fff;opacity:0.2}#mermaid-svg-vJ80AeAgofaVnFcr .sectionTitle0{fill:#333}#mermaid-svg-vJ80AeAgofaVnFcr .sectionTitle1{fill:#333}#mermaid-svg-vJ80AeAgofaVnFcr .sectionTitle2{fill:#333}#mermaid-svg-vJ80AeAgofaVnFcr .sectionTitle3{fill:#333}#mermaid-svg-vJ80AeAgofaVnFcr .sectionTitle{text-anchor:start;font-size:11px;text-height:14px;font-family:'trebuchet ms', verdana, arial;font-family:var(--mermaid-font-family)}#mermaid-svg-vJ80AeAgofaVnFcr .grid .tick{stroke:#d3d3d3;opacity:0.8;shape-rendering:crispEdges}#mermaid-svg-vJ80AeAgofaVnFcr .grid .tick text{font-family:'trebuchet ms', verdana, arial;font-family:var(--mermaid-font-family)}#mermaid-svg-vJ80AeAgofaVnFcr .grid path{stroke-width:0}#mermaid-svg-vJ80AeAgofaVnFcr .today{fill:none;stroke:red;stroke-width:2px}#mermaid-svg-vJ80AeAgofaVnFcr .task{stroke-width:2}#mermaid-svg-vJ80AeAgofaVnFcr .taskText{text-anchor:middle;font-family:'trebuchet ms', verdana, arial;font-family:var(--mermaid-font-family)}#mermaid-svg-vJ80AeAgofaVnFcr .taskText:not([font-size]){font-size:11px}#mermaid-svg-vJ80AeAgofaVnFcr .taskTextOutsideRight{fill:#000;text-anchor:start;font-size:11px;font-family:'trebuchet ms', verdana, arial;font-family:var(--mermaid-font-family)}#mermaid-svg-vJ80AeAgofaVnFcr .taskTextOutsideLeft{fill:#000;text-anchor:end;font-size:11px}#mermaid-svg-vJ80AeAgofaVnFcr .task.clickable{cursor:pointer}#mermaid-svg-vJ80AeAgofaVnFcr .taskText.clickable{cursor:pointer;fill:#003163 !important;font-weight:bold}#mermaid-svg-vJ80AeAgofaVnFcr .taskTextOutsideLeft.clickable{cursor:pointer;fill:#003163 !important;font-weight:bold}#mermaid-svg-vJ80AeAgofaVnFcr .taskTextOutsideRight.clickable{cursor:pointer;fill:#003163 !important;font-weight:bold}#mermaid-svg-vJ80AeAgofaVnFcr .taskText0,#mermaid-svg-vJ80AeAgofaVnFcr .taskText1,#mermaid-svg-vJ80AeAgofaVnFcr .taskText2,#mermaid-svg-vJ80AeAgofaVnFcr .taskText3{fill:#fff}#mermaid-svg-vJ80AeAgofaVnFcr .task0,#mermaid-svg-vJ80AeAgofaVnFcr .task1,#mermaid-svg-vJ80AeAgofaVnFcr .task2,#mermaid-svg-vJ80AeAgofaVnFcr .task3{fill:#8a90dd;stroke:#534fbc}#mermaid-svg-vJ80AeAgofaVnFcr .taskTextOutside0,#mermaid-svg-vJ80AeAgofaVnFcr .taskTextOutside2{fill:#000}#mermaid-svg-vJ80AeAgofaVnFcr .taskTextOutside1,#mermaid-svg-vJ80AeAgofaVnFcr .taskTextOutside3{fill:#000}#mermaid-svg-vJ80AeAgofaVnFcr .active0,#mermaid-svg-vJ80AeAgofaVnFcr .active1,#mermaid-svg-vJ80AeAgofaVnFcr .active2,#mermaid-svg-vJ80AeAgofaVnFcr .active3{fill:#bfc7ff;stroke:#534fbc}#mermaid-svg-vJ80AeAgofaVnFcr .activeText0,#mermaid-svg-vJ80AeAgofaVnFcr .activeText1,#mermaid-svg-vJ80AeAgofaVnFcr .activeText2,#mermaid-svg-vJ80AeAgofaVnFcr .activeText3{fill:#000 !important}#mermaid-svg-vJ80AeAgofaVnFcr .done0,#mermaid-svg-vJ80AeAgofaVnFcr .done1,#mermaid-svg-vJ80AeAgofaVnFcr .done2,#mermaid-svg-vJ80AeAgofaVnFcr .done3{stroke:grey;fill:#d3d3d3;stroke-width:2}#mermaid-svg-vJ80AeAgofaVnFcr .doneText0,#mermaid-svg-vJ80AeAgofaVnFcr .doneText1,#mermaid-svg-vJ80AeAgofaVnFcr .doneText2,#mermaid-svg-vJ80AeAgofaVnFcr .doneText3{fill:#000 !important}#mermaid-svg-vJ80AeAgofaVnFcr .crit0,#mermaid-svg-vJ80AeAgofaVnFcr .crit1,#mermaid-svg-vJ80AeAgofaVnFcr .crit2,#mermaid-svg-vJ80AeAgofaVnFcr .crit3{stroke:#f88;fill:red;stroke-width:2}#mermaid-svg-vJ80AeAgofaVnFcr .activeCrit0,#mermaid-svg-vJ80AeAgofaVnFcr .activeCrit1,#mermaid-svg-vJ80AeAgofaVnFcr .activeCrit2,#mermaid-svg-vJ80AeAgofaVnFcr .activeCrit3{stroke:#f88;fill:#bfc7ff;stroke-width:2}#mermaid-svg-vJ80AeAgofaVnFcr .doneCrit0,#mermaid-svg-vJ80AeAgofaVnFcr .doneCrit1,#mermaid-svg-vJ80AeAgofaVnFcr .doneCrit2,#mermaid-svg-vJ80AeAgofaVnFcr .doneCrit3{stroke:#f88;fill:#d3d3d3;stroke-width:2;cursor:pointer;shape-rendering:crispEdges}#mermaid-svg-vJ80AeAgofaVnFcr .milestone{transform:rotate(45deg) scale(0.8, 0.8)}#mermaid-svg-vJ80AeAgofaVnFcr .milestoneText{font-style:italic}#mermaid-svg-vJ80AeAgofaVnFcr .doneCritText0,#mermaid-svg-vJ80AeAgofaVnFcr .doneCritText1,#mermaid-svg-vJ80AeAgofaVnFcr .doneCritText2,#mermaid-svg-vJ80AeAgofaVnFcr .doneCritText3{fill:#000 !important}#mermaid-svg-vJ80AeAgofaVnFcr .activeCritText0,#mermaid-svg-vJ80AeAgofaVnFcr .activeCritText1,#mermaid-svg-vJ80AeAgofaVnFcr .activeCritText2,#mermaid-svg-vJ80AeAgofaVnFcr .activeCritText3{fill:#000 !important}#mermaid-svg-vJ80AeAgofaVnFcr .titleText{text-anchor:middle;font-size:18px;fill:#000;font-family:'trebuchet ms', verdana, arial;font-family:var(--mermaid-font-family)}#mermaid-svg-vJ80AeAgofaVnFcr g.classGroup text{fill:#9370db;stroke:none;font-family:'trebuchet ms', verdana, arial;font-family:var(--mermaid-font-family);font-size:10px}#mermaid-svg-vJ80AeAgofaVnFcr g.classGroup text .title{font-weight:bolder}#mermaid-svg-vJ80AeAgofaVnFcr g.clickable{cursor:pointer}#mermaid-svg-vJ80AeAgofaVnFcr g.classGroup rect{fill:#ECECFF;stroke:#9370db}#mermaid-svg-vJ80AeAgofaVnFcr g.classGroup line{stroke:#9370db;stroke-width:1}#mermaid-svg-vJ80AeAgofaVnFcr .classLabel .box{stroke:none;stroke-width:0;fill:#ECECFF;opacity:0.5}#mermaid-svg-vJ80AeAgofaVnFcr .classLabel .label{fill:#9370db;font-size:10px}#mermaid-svg-vJ80AeAgofaVnFcr .relation{stroke:#9370db;stroke-width:1;fill:none}#mermaid-svg-vJ80AeAgofaVnFcr .dashed-line{stroke-dasharray:3}#mermaid-svg-vJ80AeAgofaVnFcr #compositionStart{fill:#9370db;stroke:#9370db;stroke-width:1}#mermaid-svg-vJ80AeAgofaVnFcr #compositionEnd{fill:#9370db;stroke:#9370db;stroke-width:1}#mermaid-svg-vJ80AeAgofaVnFcr #aggregationStart{fill:#ECECFF;stroke:#9370db;stroke-width:1}#mermaid-svg-vJ80AeAgofaVnFcr #aggregationEnd{fill:#ECECFF;stroke:#9370db;stroke-width:1}#mermaid-svg-vJ80AeAgofaVnFcr #dependencyStart{fill:#9370db;stroke:#9370db;stroke-width:1}#mermaid-svg-vJ80AeAgofaVnFcr #dependencyEnd{fill:#9370db;stroke:#9370db;stroke-width:1}#mermaid-svg-vJ80AeAgofaVnFcr #extensionStart{fill:#9370db;stroke:#9370db;stroke-width:1}#mermaid-svg-vJ80AeAgofaVnFcr #extensionEnd{fill:#9370db;stroke:#9370db;stroke-width:1}#mermaid-svg-vJ80AeAgofaVnFcr .commit-id,#mermaid-svg-vJ80AeAgofaVnFcr .commit-msg,#mermaid-svg-vJ80AeAgofaVnFcr .branch-label{fill:lightgrey;color:lightgrey;font-family:'trebuchet ms', verdana, arial;font-family:var(--mermaid-font-family)}#mermaid-svg-vJ80AeAgofaVnFcr .pieTitleText{text-anchor:middle;font-size:25px;fill:#000;font-family:'trebuchet ms', verdana, arial;font-family:var(--mermaid-font-family)}#mermaid-svg-vJ80AeAgofaVnFcr .slice{font-family:'trebuchet ms', verdana, arial;font-family:var(--mermaid-font-family)}#mermaid-svg-vJ80AeAgofaVnFcr g.stateGroup text{fill:#9370db;stroke:none;font-size:10px;font-family:'trebuchet ms', verdana, arial;font-family:var(--mermaid-font-family)}#mermaid-svg-vJ80AeAgofaVnFcr g.stateGroup text{fill:#9370db;fill:#333;stroke:none;font-size:10px}#mermaid-svg-vJ80AeAgofaVnFcr g.statediagram-cluster .cluster-label text{fill:#333}#mermaid-svg-vJ80AeAgofaVnFcr g.stateGroup .state-title{font-weight:bolder;fill:#000}#mermaid-svg-vJ80AeAgofaVnFcr g.stateGroup rect{fill:#ECECFF;stroke:#9370db}#mermaid-svg-vJ80AeAgofaVnFcr g.stateGroup line{stroke:#9370db;stroke-width:1}#mermaid-svg-vJ80AeAgofaVnFcr .transition{stroke:#9370db;stroke-width:1;fill:none}#mermaid-svg-vJ80AeAgofaVnFcr .stateGroup .composit{fill:white;border-bottom:1px}#mermaid-svg-vJ80AeAgofaVnFcr .stateGroup .alt-composit{fill:#e0e0e0;border-bottom:1px}#mermaid-svg-vJ80AeAgofaVnFcr .state-note{stroke:#aa3;fill:#fff5ad}#mermaid-svg-vJ80AeAgofaVnFcr .state-note text{fill:black;stroke:none;font-size:10px}#mermaid-svg-vJ80AeAgofaVnFcr .stateLabel .box{stroke:none;stroke-width:0;fill:#ECECFF;opacity:0.7}#mermaid-svg-vJ80AeAgofaVnFcr .edgeLabel text{fill:#333}#mermaid-svg-vJ80AeAgofaVnFcr .stateLabel text{fill:#000;font-size:10px;font-weight:bold;font-family:'trebuchet ms', verdana, arial;font-family:var(--mermaid-font-family)}#mermaid-svg-vJ80AeAgofaVnFcr .node circle.state-start{fill:black;stroke:black}#mermaid-svg-vJ80AeAgofaVnFcr .node circle.state-end{fill:black;stroke:white;stroke-width:1.5}#mermaid-svg-vJ80AeAgofaVnFcr #statediagram-barbEnd{fill:#9370db}#mermaid-svg-vJ80AeAgofaVnFcr .statediagram-cluster rect{fill:#ECECFF;stroke:#9370db;stroke-width:1px}#mermaid-svg-vJ80AeAgofaVnFcr .statediagram-cluster rect.outer{rx:5px;ry:5px}#mermaid-svg-vJ80AeAgofaVnFcr .statediagram-state .divider{stroke:#9370db}#mermaid-svg-vJ80AeAgofaVnFcr .statediagram-state .title-state{rx:5px;ry:5px}#mermaid-svg-vJ80AeAgofaVnFcr .statediagram-cluster.statediagram-cluster .inner{fill:white}#mermaid-svg-vJ80AeAgofaVnFcr .statediagram-cluster.statediagram-cluster-alt .inner{fill:#e0e0e0}#mermaid-svg-vJ80AeAgofaVnFcr .statediagram-cluster .inner{rx:0;ry:0}#mermaid-svg-vJ80AeAgofaVnFcr .statediagram-state rect.basic{rx:5px;ry:5px}#mermaid-svg-vJ80AeAgofaVnFcr .statediagram-state rect.divider{stroke-dasharray:10,10;fill:#efefef}#mermaid-svg-vJ80AeAgofaVnFcr .note-edge{stroke-dasharray:5}#mermaid-svg-vJ80AeAgofaVnFcr .statediagram-note rect{fill:#fff5ad;stroke:#aa3;stroke-width:1px;rx:0;ry:0}:root{--mermaid-font-family: '"trebuchet ms", verdana, arial';--mermaid-font-family: "Comic Sans MS", "Comic Sans", cursive}#mermaid-svg-vJ80AeAgofaVnFcr .error-icon{fill:#522}#mermaid-svg-vJ80AeAgofaVnFcr .error-text{fill:#522;stroke:#522}#mermaid-svg-vJ80AeAgofaVnFcr .edge-thickness-normal{stroke-width:2px}#mermaid-svg-vJ80AeAgofaVnFcr .edge-thickness-thick{stroke-width:3.5px}#mermaid-svg-vJ80AeAgofaVnFcr .edge-pattern-solid{stroke-dasharray:0}#mermaid-svg-vJ80AeAgofaVnFcr .edge-pattern-dashed{stroke-dasharray:3}#mermaid-svg-vJ80AeAgofaVnFcr .edge-pattern-dotted{stroke-dasharray:2}#mermaid-svg-vJ80AeAgofaVnFcr .marker{fill:#333}#mermaid-svg-vJ80AeAgofaVnFcr .marker.cross{stroke:#333}:root { --mermaid-font-family: "trebuchet ms", verdana, arial;}#mermaid-svg-vJ80AeAgofaVnFcr {color: rgba(0, 0, 0, 0.75);font: ;}Dog子类Animal父类继承Inheritance
  • 实现(Realization)

    • 一种类与接口的关系,表示类是接口所有特征和行为的实现.
    • 箭头指向:带三角箭头的虚线箭头指向接口
    • mermaid语法:A ..|> B
#mermaid-svg-jslNAsNaBAsxptDc .label{font-family:'trebuchet ms', verdana, arial;font-family:var(--mermaid-font-family);fill:#333;color:#333}#mermaid-svg-jslNAsNaBAsxptDc .label text{fill:#333}#mermaid-svg-jslNAsNaBAsxptDc .node rect,#mermaid-svg-jslNAsNaBAsxptDc .node circle,#mermaid-svg-jslNAsNaBAsxptDc .node ellipse,#mermaid-svg-jslNAsNaBAsxptDc .node polygon,#mermaid-svg-jslNAsNaBAsxptDc .node path{fill:#ECECFF;stroke:#9370db;stroke-width:1px}#mermaid-svg-jslNAsNaBAsxptDc .node .label{text-align:center;fill:#333}#mermaid-svg-jslNAsNaBAsxptDc .node.clickable{cursor:pointer}#mermaid-svg-jslNAsNaBAsxptDc .arrowheadPath{fill:#333}#mermaid-svg-jslNAsNaBAsxptDc .edgePath .path{stroke:#333;stroke-width:1.5px}#mermaid-svg-jslNAsNaBAsxptDc .flowchart-link{stroke:#333;fill:none}#mermaid-svg-jslNAsNaBAsxptDc .edgeLabel{background-color:#e8e8e8;text-align:center}#mermaid-svg-jslNAsNaBAsxptDc .edgeLabel rect{opacity:0.9}#mermaid-svg-jslNAsNaBAsxptDc .edgeLabel span{color:#333}#mermaid-svg-jslNAsNaBAsxptDc .cluster rect{fill:#ffffde;stroke:#aa3;stroke-width:1px}#mermaid-svg-jslNAsNaBAsxptDc .cluster text{fill:#333}#mermaid-svg-jslNAsNaBAsxptDc div.mermaidTooltip{position:absolute;text-align:center;max-width:200px;padding:2px;font-family:'trebuchet ms', verdana, arial;font-family:var(--mermaid-font-family);font-size:12px;background:#ffffde;border:1px solid #aa3;border-radius:2px;pointer-events:none;z-index:100}#mermaid-svg-jslNAsNaBAsxptDc .actor{stroke:#ccf;fill:#ECECFF}#mermaid-svg-jslNAsNaBAsxptDc text.actor>tspan{fill:#000;stroke:none}#mermaid-svg-jslNAsNaBAsxptDc .actor-line{stroke:grey}#mermaid-svg-jslNAsNaBAsxptDc .messageLine0{stroke-width:1.5;stroke-dasharray:none;stroke:#333}#mermaid-svg-jslNAsNaBAsxptDc .messageLine1{stroke-width:1.5;stroke-dasharray:2, 2;stroke:#333}#mermaid-svg-jslNAsNaBAsxptDc #arrowhead path{fill:#333;stroke:#333}#mermaid-svg-jslNAsNaBAsxptDc .sequenceNumber{fill:#fff}#mermaid-svg-jslNAsNaBAsxptDc #sequencenumber{fill:#333}#mermaid-svg-jslNAsNaBAsxptDc #crosshead path{fill:#333;stroke:#333}#mermaid-svg-jslNAsNaBAsxptDc .messageText{fill:#333;stroke:#333}#mermaid-svg-jslNAsNaBAsxptDc .labelBox{stroke:#ccf;fill:#ECECFF}#mermaid-svg-jslNAsNaBAsxptDc .labelText,#mermaid-svg-jslNAsNaBAsxptDc .labelText>tspan{fill:#000;stroke:none}#mermaid-svg-jslNAsNaBAsxptDc .loopText,#mermaid-svg-jslNAsNaBAsxptDc .loopText>tspan{fill:#000;stroke:none}#mermaid-svg-jslNAsNaBAsxptDc .loopLine{stroke-width:2px;stroke-dasharray:2, 2;stroke:#ccf;fill:#ccf}#mermaid-svg-jslNAsNaBAsxptDc .note{stroke:#aa3;fill:#fff5ad}#mermaid-svg-jslNAsNaBAsxptDc .noteText,#mermaid-svg-jslNAsNaBAsxptDc .noteText>tspan{fill:#000;stroke:none}#mermaid-svg-jslNAsNaBAsxptDc .activation0{fill:#f4f4f4;stroke:#666}#mermaid-svg-jslNAsNaBAsxptDc .activation1{fill:#f4f4f4;stroke:#666}#mermaid-svg-jslNAsNaBAsxptDc .activation2{fill:#f4f4f4;stroke:#666}#mermaid-svg-jslNAsNaBAsxptDc .mermaid-main-font{font-family:"trebuchet ms", verdana, arial;font-family:var(--mermaid-font-family)}#mermaid-svg-jslNAsNaBAsxptDc .section{stroke:none;opacity:0.2}#mermaid-svg-jslNAsNaBAsxptDc .section0{fill:rgba(102,102,255,0.49)}#mermaid-svg-jslNAsNaBAsxptDc .section2{fill:#fff400}#mermaid-svg-jslNAsNaBAsxptDc .section1,#mermaid-svg-jslNAsNaBAsxptDc .section3{fill:#fff;opacity:0.2}#mermaid-svg-jslNAsNaBAsxptDc .sectionTitle0{fill:#333}#mermaid-svg-jslNAsNaBAsxptDc .sectionTitle1{fill:#333}#mermaid-svg-jslNAsNaBAsxptDc .sectionTitle2{fill:#333}#mermaid-svg-jslNAsNaBAsxptDc .sectionTitle3{fill:#333}#mermaid-svg-jslNAsNaBAsxptDc .sectionTitle{text-anchor:start;font-size:11px;text-height:14px;font-family:'trebuchet ms', verdana, arial;font-family:var(--mermaid-font-family)}#mermaid-svg-jslNAsNaBAsxptDc .grid .tick{stroke:#d3d3d3;opacity:0.8;shape-rendering:crispEdges}#mermaid-svg-jslNAsNaBAsxptDc .grid .tick text{font-family:'trebuchet ms', verdana, arial;font-family:var(--mermaid-font-family)}#mermaid-svg-jslNAsNaBAsxptDc .grid path{stroke-width:0}#mermaid-svg-jslNAsNaBAsxptDc .today{fill:none;stroke:red;stroke-width:2px}#mermaid-svg-jslNAsNaBAsxptDc .task{stroke-width:2}#mermaid-svg-jslNAsNaBAsxptDc .taskText{text-anchor:middle;font-family:'trebuchet ms', verdana, arial;font-family:var(--mermaid-font-family)}#mermaid-svg-jslNAsNaBAsxptDc .taskText:not([font-size]){font-size:11px}#mermaid-svg-jslNAsNaBAsxptDc .taskTextOutsideRight{fill:#000;text-anchor:start;font-size:11px;font-family:'trebuchet ms', verdana, arial;font-family:var(--mermaid-font-family)}#mermaid-svg-jslNAsNaBAsxptDc .taskTextOutsideLeft{fill:#000;text-anchor:end;font-size:11px}#mermaid-svg-jslNAsNaBAsxptDc .task.clickable{cursor:pointer}#mermaid-svg-jslNAsNaBAsxptDc .taskText.clickable{cursor:pointer;fill:#003163 !important;font-weight:bold}#mermaid-svg-jslNAsNaBAsxptDc .taskTextOutsideLeft.clickable{cursor:pointer;fill:#003163 !important;font-weight:bold}#mermaid-svg-jslNAsNaBAsxptDc .taskTextOutsideRight.clickable{cursor:pointer;fill:#003163 !important;font-weight:bold}#mermaid-svg-jslNAsNaBAsxptDc .taskText0,#mermaid-svg-jslNAsNaBAsxptDc .taskText1,#mermaid-svg-jslNAsNaBAsxptDc .taskText2,#mermaid-svg-jslNAsNaBAsxptDc .taskText3{fill:#fff}#mermaid-svg-jslNAsNaBAsxptDc .task0,#mermaid-svg-jslNAsNaBAsxptDc .task1,#mermaid-svg-jslNAsNaBAsxptDc .task2,#mermaid-svg-jslNAsNaBAsxptDc .task3{fill:#8a90dd;stroke:#534fbc}#mermaid-svg-jslNAsNaBAsxptDc .taskTextOutside0,#mermaid-svg-jslNAsNaBAsxptDc .taskTextOutside2{fill:#000}#mermaid-svg-jslNAsNaBAsxptDc .taskTextOutside1,#mermaid-svg-jslNAsNaBAsxptDc .taskTextOutside3{fill:#000}#mermaid-svg-jslNAsNaBAsxptDc .active0,#mermaid-svg-jslNAsNaBAsxptDc .active1,#mermaid-svg-jslNAsNaBAsxptDc .active2,#mermaid-svg-jslNAsNaBAsxptDc .active3{fill:#bfc7ff;stroke:#534fbc}#mermaid-svg-jslNAsNaBAsxptDc .activeText0,#mermaid-svg-jslNAsNaBAsxptDc .activeText1,#mermaid-svg-jslNAsNaBAsxptDc .activeText2,#mermaid-svg-jslNAsNaBAsxptDc .activeText3{fill:#000 !important}#mermaid-svg-jslNAsNaBAsxptDc .done0,#mermaid-svg-jslNAsNaBAsxptDc .done1,#mermaid-svg-jslNAsNaBAsxptDc .done2,#mermaid-svg-jslNAsNaBAsxptDc .done3{stroke:grey;fill:#d3d3d3;stroke-width:2}#mermaid-svg-jslNAsNaBAsxptDc .doneText0,#mermaid-svg-jslNAsNaBAsxptDc .doneText1,#mermaid-svg-jslNAsNaBAsxptDc .doneText2,#mermaid-svg-jslNAsNaBAsxptDc .doneText3{fill:#000 !important}#mermaid-svg-jslNAsNaBAsxptDc .crit0,#mermaid-svg-jslNAsNaBAsxptDc .crit1,#mermaid-svg-jslNAsNaBAsxptDc .crit2,#mermaid-svg-jslNAsNaBAsxptDc .crit3{stroke:#f88;fill:red;stroke-width:2}#mermaid-svg-jslNAsNaBAsxptDc .activeCrit0,#mermaid-svg-jslNAsNaBAsxptDc .activeCrit1,#mermaid-svg-jslNAsNaBAsxptDc .activeCrit2,#mermaid-svg-jslNAsNaBAsxptDc .activeCrit3{stroke:#f88;fill:#bfc7ff;stroke-width:2}#mermaid-svg-jslNAsNaBAsxptDc .doneCrit0,#mermaid-svg-jslNAsNaBAsxptDc .doneCrit1,#mermaid-svg-jslNAsNaBAsxptDc .doneCrit2,#mermaid-svg-jslNAsNaBAsxptDc .doneCrit3{stroke:#f88;fill:#d3d3d3;stroke-width:2;cursor:pointer;shape-rendering:crispEdges}#mermaid-svg-jslNAsNaBAsxptDc .milestone{transform:rotate(45deg) scale(0.8, 0.8)}#mermaid-svg-jslNAsNaBAsxptDc .milestoneText{font-style:italic}#mermaid-svg-jslNAsNaBAsxptDc .doneCritText0,#mermaid-svg-jslNAsNaBAsxptDc .doneCritText1,#mermaid-svg-jslNAsNaBAsxptDc .doneCritText2,#mermaid-svg-jslNAsNaBAsxptDc .doneCritText3{fill:#000 !important}#mermaid-svg-jslNAsNaBAsxptDc .activeCritText0,#mermaid-svg-jslNAsNaBAsxptDc .activeCritText1,#mermaid-svg-jslNAsNaBAsxptDc .activeCritText2,#mermaid-svg-jslNAsNaBAsxptDc .activeCritText3{fill:#000 !important}#mermaid-svg-jslNAsNaBAsxptDc .titleText{text-anchor:middle;font-size:18px;fill:#000;font-family:'trebuchet ms', verdana, arial;font-family:var(--mermaid-font-family)}#mermaid-svg-jslNAsNaBAsxptDc g.classGroup text{fill:#9370db;stroke:none;font-family:'trebuchet ms', verdana, arial;font-family:var(--mermaid-font-family);font-size:10px}#mermaid-svg-jslNAsNaBAsxptDc g.classGroup text .title{font-weight:bolder}#mermaid-svg-jslNAsNaBAsxptDc g.clickable{cursor:pointer}#mermaid-svg-jslNAsNaBAsxptDc g.classGroup rect{fill:#ECECFF;stroke:#9370db}#mermaid-svg-jslNAsNaBAsxptDc g.classGroup line{stroke:#9370db;stroke-width:1}#mermaid-svg-jslNAsNaBAsxptDc .classLabel .box{stroke:none;stroke-width:0;fill:#ECECFF;opacity:0.5}#mermaid-svg-jslNAsNaBAsxptDc .classLabel .label{fill:#9370db;font-size:10px}#mermaid-svg-jslNAsNaBAsxptDc .relation{stroke:#9370db;stroke-width:1;fill:none}#mermaid-svg-jslNAsNaBAsxptDc .dashed-line{stroke-dasharray:3}#mermaid-svg-jslNAsNaBAsxptDc #compositionStart{fill:#9370db;stroke:#9370db;stroke-width:1}#mermaid-svg-jslNAsNaBAsxptDc #compositionEnd{fill:#9370db;stroke:#9370db;stroke-width:1}#mermaid-svg-jslNAsNaBAsxptDc #aggregationStart{fill:#ECECFF;stroke:#9370db;stroke-width:1}#mermaid-svg-jslNAsNaBAsxptDc #aggregationEnd{fill:#ECECFF;stroke:#9370db;stroke-width:1}#mermaid-svg-jslNAsNaBAsxptDc #dependencyStart{fill:#9370db;stroke:#9370db;stroke-width:1}#mermaid-svg-jslNAsNaBAsxptDc #dependencyEnd{fill:#9370db;stroke:#9370db;stroke-width:1}#mermaid-svg-jslNAsNaBAsxptDc #extensionStart{fill:#9370db;stroke:#9370db;stroke-width:1}#mermaid-svg-jslNAsNaBAsxptDc #extensionEnd{fill:#9370db;stroke:#9370db;stroke-width:1}#mermaid-svg-jslNAsNaBAsxptDc .commit-id,#mermaid-svg-jslNAsNaBAsxptDc .commit-msg,#mermaid-svg-jslNAsNaBAsxptDc .branch-label{fill:lightgrey;color:lightgrey;font-family:'trebuchet ms', verdana, arial;font-family:var(--mermaid-font-family)}#mermaid-svg-jslNAsNaBAsxptDc .pieTitleText{text-anchor:middle;font-size:25px;fill:#000;font-family:'trebuchet ms', verdana, arial;font-family:var(--mermaid-font-family)}#mermaid-svg-jslNAsNaBAsxptDc .slice{font-family:'trebuchet ms', verdana, arial;font-family:var(--mermaid-font-family)}#mermaid-svg-jslNAsNaBAsxptDc g.stateGroup text{fill:#9370db;stroke:none;font-size:10px;font-family:'trebuchet ms', verdana, arial;font-family:var(--mermaid-font-family)}#mermaid-svg-jslNAsNaBAsxptDc g.stateGroup text{fill:#9370db;fill:#333;stroke:none;font-size:10px}#mermaid-svg-jslNAsNaBAsxptDc g.statediagram-cluster .cluster-label text{fill:#333}#mermaid-svg-jslNAsNaBAsxptDc g.stateGroup .state-title{font-weight:bolder;fill:#000}#mermaid-svg-jslNAsNaBAsxptDc g.stateGroup rect{fill:#ECECFF;stroke:#9370db}#mermaid-svg-jslNAsNaBAsxptDc g.stateGroup line{stroke:#9370db;stroke-width:1}#mermaid-svg-jslNAsNaBAsxptDc .transition{stroke:#9370db;stroke-width:1;fill:none}#mermaid-svg-jslNAsNaBAsxptDc .stateGroup .composit{fill:white;border-bottom:1px}#mermaid-svg-jslNAsNaBAsxptDc .stateGroup .alt-composit{fill:#e0e0e0;border-bottom:1px}#mermaid-svg-jslNAsNaBAsxptDc .state-note{stroke:#aa3;fill:#fff5ad}#mermaid-svg-jslNAsNaBAsxptDc .state-note text{fill:black;stroke:none;font-size:10px}#mermaid-svg-jslNAsNaBAsxptDc .stateLabel .box{stroke:none;stroke-width:0;fill:#ECECFF;opacity:0.7}#mermaid-svg-jslNAsNaBAsxptDc .edgeLabel text{fill:#333}#mermaid-svg-jslNAsNaBAsxptDc .stateLabel text{fill:#000;font-size:10px;font-weight:bold;font-family:'trebuchet ms', verdana, arial;font-family:var(--mermaid-font-family)}#mermaid-svg-jslNAsNaBAsxptDc .node circle.state-start{fill:black;stroke:black}#mermaid-svg-jslNAsNaBAsxptDc .node circle.state-end{fill:black;stroke:white;stroke-width:1.5}#mermaid-svg-jslNAsNaBAsxptDc #statediagram-barbEnd{fill:#9370db}#mermaid-svg-jslNAsNaBAsxptDc .statediagram-cluster rect{fill:#ECECFF;stroke:#9370db;stroke-width:1px}#mermaid-svg-jslNAsNaBAsxptDc .statediagram-cluster rect.outer{rx:5px;ry:5px}#mermaid-svg-jslNAsNaBAsxptDc .statediagram-state .divider{stroke:#9370db}#mermaid-svg-jslNAsNaBAsxptDc .statediagram-state .title-state{rx:5px;ry:5px}#mermaid-svg-jslNAsNaBAsxptDc .statediagram-cluster.statediagram-cluster .inner{fill:white}#mermaid-svg-jslNAsNaBAsxptDc .statediagram-cluster.statediagram-cluster-alt .inner{fill:#e0e0e0}#mermaid-svg-jslNAsNaBAsxptDc .statediagram-cluster .inner{rx:0;ry:0}#mermaid-svg-jslNAsNaBAsxptDc .statediagram-state rect.basic{rx:5px;ry:5px}#mermaid-svg-jslNAsNaBAsxptDc .statediagram-state rect.divider{stroke-dasharray:10,10;fill:#efefef}#mermaid-svg-jslNAsNaBAsxptDc .note-edge{stroke-dasharray:5}#mermaid-svg-jslNAsNaBAsxptDc .statediagram-note rect{fill:#fff5ad;stroke:#aa3;stroke-width:1px;rx:0;ry:0}:root{--mermaid-font-family: '"trebuchet ms", verdana, arial';--mermaid-font-family: "Comic Sans MS", "Comic Sans", cursive}#mermaid-svg-jslNAsNaBAsxptDc .error-icon{fill:#522}#mermaid-svg-jslNAsNaBAsxptDc .error-text{fill:#522;stroke:#522}#mermaid-svg-jslNAsNaBAsxptDc .edge-thickness-normal{stroke-width:2px}#mermaid-svg-jslNAsNaBAsxptDc .edge-thickness-thick{stroke-width:3.5px}#mermaid-svg-jslNAsNaBAsxptDc .edge-pattern-solid{stroke-dasharray:0}#mermaid-svg-jslNAsNaBAsxptDc .edge-pattern-dashed{stroke-dasharray:3}#mermaid-svg-jslNAsNaBAsxptDc .edge-pattern-dotted{stroke-dasharray:2}#mermaid-svg-jslNAsNaBAsxptDc .marker{fill:#333}#mermaid-svg-jslNAsNaBAsxptDc .marker.cross{stroke:#333}:root { --mermaid-font-family: "trebuchet ms", verdana, arial;}#mermaid-svg-jslNAsNaBAsxptDc {color: rgba(0, 0, 0, 0.75);font: ;}UserDaoImpl接口实现类类UserDao接口实现Realization
  • 关联(Association)

    • 是一种拥有的关系,它使一个类知道另一个类的属性和方法;如:老师与学生,丈夫与妻子关联可以是双向的,也可以是单向的
    • 双向的关联可以有两个箭头或者没有箭头,单向的关联有一个箭头
    • 代码体现:成员变量
    • 箭头指向:带普通箭头的实线拥有者指向被拥有者
    • mermaid语法:A "1" --> "n" B
#mermaid-svg-uzszNRrn1oJdMOVQ .label{font-family:'trebuchet ms', verdana, arial;font-family:var(--mermaid-font-family);fill:#333;color:#333}#mermaid-svg-uzszNRrn1oJdMOVQ .label text{fill:#333}#mermaid-svg-uzszNRrn1oJdMOVQ .node rect,#mermaid-svg-uzszNRrn1oJdMOVQ .node circle,#mermaid-svg-uzszNRrn1oJdMOVQ .node ellipse,#mermaid-svg-uzszNRrn1oJdMOVQ .node polygon,#mermaid-svg-uzszNRrn1oJdMOVQ .node path{fill:#ECECFF;stroke:#9370db;stroke-width:1px}#mermaid-svg-uzszNRrn1oJdMOVQ .node .label{text-align:center;fill:#333}#mermaid-svg-uzszNRrn1oJdMOVQ .node.clickable{cursor:pointer}#mermaid-svg-uzszNRrn1oJdMOVQ .arrowheadPath{fill:#333}#mermaid-svg-uzszNRrn1oJdMOVQ .edgePath .path{stroke:#333;stroke-width:1.5px}#mermaid-svg-uzszNRrn1oJdMOVQ .flowchart-link{stroke:#333;fill:none}#mermaid-svg-uzszNRrn1oJdMOVQ .edgeLabel{background-color:#e8e8e8;text-align:center}#mermaid-svg-uzszNRrn1oJdMOVQ .edgeLabel rect{opacity:0.9}#mermaid-svg-uzszNRrn1oJdMOVQ .edgeLabel span{color:#333}#mermaid-svg-uzszNRrn1oJdMOVQ .cluster rect{fill:#ffffde;stroke:#aa3;stroke-width:1px}#mermaid-svg-uzszNRrn1oJdMOVQ .cluster text{fill:#333}#mermaid-svg-uzszNRrn1oJdMOVQ div.mermaidTooltip{position:absolute;text-align:center;max-width:200px;padding:2px;font-family:'trebuchet ms', verdana, arial;font-family:var(--mermaid-font-family);font-size:12px;background:#ffffde;border:1px solid #aa3;border-radius:2px;pointer-events:none;z-index:100}#mermaid-svg-uzszNRrn1oJdMOVQ .actor{stroke:#ccf;fill:#ECECFF}#mermaid-svg-uzszNRrn1oJdMOVQ text.actor>tspan{fill:#000;stroke:none}#mermaid-svg-uzszNRrn1oJdMOVQ .actor-line{stroke:grey}#mermaid-svg-uzszNRrn1oJdMOVQ .messageLine0{stroke-width:1.5;stroke-dasharray:none;stroke:#333}#mermaid-svg-uzszNRrn1oJdMOVQ .messageLine1{stroke-width:1.5;stroke-dasharray:2, 2;stroke:#333}#mermaid-svg-uzszNRrn1oJdMOVQ #arrowhead path{fill:#333;stroke:#333}#mermaid-svg-uzszNRrn1oJdMOVQ .sequenceNumber{fill:#fff}#mermaid-svg-uzszNRrn1oJdMOVQ #sequencenumber{fill:#333}#mermaid-svg-uzszNRrn1oJdMOVQ #crosshead path{fill:#333;stroke:#333}#mermaid-svg-uzszNRrn1oJdMOVQ .messageText{fill:#333;stroke:#333}#mermaid-svg-uzszNRrn1oJdMOVQ .labelBox{stroke:#ccf;fill:#ECECFF}#mermaid-svg-uzszNRrn1oJdMOVQ .labelText,#mermaid-svg-uzszNRrn1oJdMOVQ .labelText>tspan{fill:#000;stroke:none}#mermaid-svg-uzszNRrn1oJdMOVQ .loopText,#mermaid-svg-uzszNRrn1oJdMOVQ .loopText>tspan{fill:#000;stroke:none}#mermaid-svg-uzszNRrn1oJdMOVQ .loopLine{stroke-width:2px;stroke-dasharray:2, 2;stroke:#ccf;fill:#ccf}#mermaid-svg-uzszNRrn1oJdMOVQ .note{stroke:#aa3;fill:#fff5ad}#mermaid-svg-uzszNRrn1oJdMOVQ .noteText,#mermaid-svg-uzszNRrn1oJdMOVQ .noteText>tspan{fill:#000;stroke:none}#mermaid-svg-uzszNRrn1oJdMOVQ .activation0{fill:#f4f4f4;stroke:#666}#mermaid-svg-uzszNRrn1oJdMOVQ .activation1{fill:#f4f4f4;stroke:#666}#mermaid-svg-uzszNRrn1oJdMOVQ .activation2{fill:#f4f4f4;stroke:#666}#mermaid-svg-uzszNRrn1oJdMOVQ .mermaid-main-font{font-family:"trebuchet ms", verdana, arial;font-family:var(--mermaid-font-family)}#mermaid-svg-uzszNRrn1oJdMOVQ .section{stroke:none;opacity:0.2}#mermaid-svg-uzszNRrn1oJdMOVQ .section0{fill:rgba(102,102,255,0.49)}#mermaid-svg-uzszNRrn1oJdMOVQ .section2{fill:#fff400}#mermaid-svg-uzszNRrn1oJdMOVQ .section1,#mermaid-svg-uzszNRrn1oJdMOVQ .section3{fill:#fff;opacity:0.2}#mermaid-svg-uzszNRrn1oJdMOVQ .sectionTitle0{fill:#333}#mermaid-svg-uzszNRrn1oJdMOVQ .sectionTitle1{fill:#333}#mermaid-svg-uzszNRrn1oJdMOVQ .sectionTitle2{fill:#333}#mermaid-svg-uzszNRrn1oJdMOVQ .sectionTitle3{fill:#333}#mermaid-svg-uzszNRrn1oJdMOVQ .sectionTitle{text-anchor:start;font-size:11px;text-height:14px;font-family:'trebuchet ms', verdana, arial;font-family:var(--mermaid-font-family)}#mermaid-svg-uzszNRrn1oJdMOVQ .grid .tick{stroke:#d3d3d3;opacity:0.8;shape-rendering:crispEdges}#mermaid-svg-uzszNRrn1oJdMOVQ .grid .tick text{font-family:'trebuchet ms', verdana, arial;font-family:var(--mermaid-font-family)}#mermaid-svg-uzszNRrn1oJdMOVQ .grid path{stroke-width:0}#mermaid-svg-uzszNRrn1oJdMOVQ .today{fill:none;stroke:red;stroke-width:2px}#mermaid-svg-uzszNRrn1oJdMOVQ .task{stroke-width:2}#mermaid-svg-uzszNRrn1oJdMOVQ .taskText{text-anchor:middle;font-family:'trebuchet ms', verdana, arial;font-family:var(--mermaid-font-family)}#mermaid-svg-uzszNRrn1oJdMOVQ .taskText:not([font-size]){font-size:11px}#mermaid-svg-uzszNRrn1oJdMOVQ .taskTextOutsideRight{fill:#000;text-anchor:start;font-size:11px;font-family:'trebuchet ms', verdana, arial;font-family:var(--mermaid-font-family)}#mermaid-svg-uzszNRrn1oJdMOVQ .taskTextOutsideLeft{fill:#000;text-anchor:end;font-size:11px}#mermaid-svg-uzszNRrn1oJdMOVQ .task.clickable{cursor:pointer}#mermaid-svg-uzszNRrn1oJdMOVQ .taskText.clickable{cursor:pointer;fill:#003163 !important;font-weight:bold}#mermaid-svg-uzszNRrn1oJdMOVQ .taskTextOutsideLeft.clickable{cursor:pointer;fill:#003163 !important;font-weight:bold}#mermaid-svg-uzszNRrn1oJdMOVQ .taskTextOutsideRight.clickable{cursor:pointer;fill:#003163 !important;font-weight:bold}#mermaid-svg-uzszNRrn1oJdMOVQ .taskText0,#mermaid-svg-uzszNRrn1oJdMOVQ .taskText1,#mermaid-svg-uzszNRrn1oJdMOVQ .taskText2,#mermaid-svg-uzszNRrn1oJdMOVQ .taskText3{fill:#fff}#mermaid-svg-uzszNRrn1oJdMOVQ .task0,#mermaid-svg-uzszNRrn1oJdMOVQ .task1,#mermaid-svg-uzszNRrn1oJdMOVQ .task2,#mermaid-svg-uzszNRrn1oJdMOVQ .task3{fill:#8a90dd;stroke:#534fbc}#mermaid-svg-uzszNRrn1oJdMOVQ .taskTextOutside0,#mermaid-svg-uzszNRrn1oJdMOVQ .taskTextOutside2{fill:#000}#mermaid-svg-uzszNRrn1oJdMOVQ .taskTextOutside1,#mermaid-svg-uzszNRrn1oJdMOVQ .taskTextOutside3{fill:#000}#mermaid-svg-uzszNRrn1oJdMOVQ .active0,#mermaid-svg-uzszNRrn1oJdMOVQ .active1,#mermaid-svg-uzszNRrn1oJdMOVQ .active2,#mermaid-svg-uzszNRrn1oJdMOVQ .active3{fill:#bfc7ff;stroke:#534fbc}#mermaid-svg-uzszNRrn1oJdMOVQ .activeText0,#mermaid-svg-uzszNRrn1oJdMOVQ .activeText1,#mermaid-svg-uzszNRrn1oJdMOVQ .activeText2,#mermaid-svg-uzszNRrn1oJdMOVQ .activeText3{fill:#000 !important}#mermaid-svg-uzszNRrn1oJdMOVQ .done0,#mermaid-svg-uzszNRrn1oJdMOVQ .done1,#mermaid-svg-uzszNRrn1oJdMOVQ .done2,#mermaid-svg-uzszNRrn1oJdMOVQ .done3{stroke:grey;fill:#d3d3d3;stroke-width:2}#mermaid-svg-uzszNRrn1oJdMOVQ .doneText0,#mermaid-svg-uzszNRrn1oJdMOVQ .doneText1,#mermaid-svg-uzszNRrn1oJdMOVQ .doneText2,#mermaid-svg-uzszNRrn1oJdMOVQ .doneText3{fill:#000 !important}#mermaid-svg-uzszNRrn1oJdMOVQ .crit0,#mermaid-svg-uzszNRrn1oJdMOVQ .crit1,#mermaid-svg-uzszNRrn1oJdMOVQ .crit2,#mermaid-svg-uzszNRrn1oJdMOVQ .crit3{stroke:#f88;fill:red;stroke-width:2}#mermaid-svg-uzszNRrn1oJdMOVQ .activeCrit0,#mermaid-svg-uzszNRrn1oJdMOVQ .activeCrit1,#mermaid-svg-uzszNRrn1oJdMOVQ .activeCrit2,#mermaid-svg-uzszNRrn1oJdMOVQ .activeCrit3{stroke:#f88;fill:#bfc7ff;stroke-width:2}#mermaid-svg-uzszNRrn1oJdMOVQ .doneCrit0,#mermaid-svg-uzszNRrn1oJdMOVQ .doneCrit1,#mermaid-svg-uzszNRrn1oJdMOVQ .doneCrit2,#mermaid-svg-uzszNRrn1oJdMOVQ .doneCrit3{stroke:#f88;fill:#d3d3d3;stroke-width:2;cursor:pointer;shape-rendering:crispEdges}#mermaid-svg-uzszNRrn1oJdMOVQ .milestone{transform:rotate(45deg) scale(0.8, 0.8)}#mermaid-svg-uzszNRrn1oJdMOVQ .milestoneText{font-style:italic}#mermaid-svg-uzszNRrn1oJdMOVQ .doneCritText0,#mermaid-svg-uzszNRrn1oJdMOVQ .doneCritText1,#mermaid-svg-uzszNRrn1oJdMOVQ .doneCritText2,#mermaid-svg-uzszNRrn1oJdMOVQ .doneCritText3{fill:#000 !important}#mermaid-svg-uzszNRrn1oJdMOVQ .activeCritText0,#mermaid-svg-uzszNRrn1oJdMOVQ .activeCritText1,#mermaid-svg-uzszNRrn1oJdMOVQ .activeCritText2,#mermaid-svg-uzszNRrn1oJdMOVQ .activeCritText3{fill:#000 !important}#mermaid-svg-uzszNRrn1oJdMOVQ .titleText{text-anchor:middle;font-size:18px;fill:#000;font-family:'trebuchet ms', verdana, arial;font-family:var(--mermaid-font-family)}#mermaid-svg-uzszNRrn1oJdMOVQ g.classGroup text{fill:#9370db;stroke:none;font-family:'trebuchet ms', verdana, arial;font-family:var(--mermaid-font-family);font-size:10px}#mermaid-svg-uzszNRrn1oJdMOVQ g.classGroup text .title{font-weight:bolder}#mermaid-svg-uzszNRrn1oJdMOVQ g.clickable{cursor:pointer}#mermaid-svg-uzszNRrn1oJdMOVQ g.classGroup rect{fill:#ECECFF;stroke:#9370db}#mermaid-svg-uzszNRrn1oJdMOVQ g.classGroup line{stroke:#9370db;stroke-width:1}#mermaid-svg-uzszNRrn1oJdMOVQ .classLabel .box{stroke:none;stroke-width:0;fill:#ECECFF;opacity:0.5}#mermaid-svg-uzszNRrn1oJdMOVQ .classLabel .label{fill:#9370db;font-size:10px}#mermaid-svg-uzszNRrn1oJdMOVQ .relation{stroke:#9370db;stroke-width:1;fill:none}#mermaid-svg-uzszNRrn1oJdMOVQ .dashed-line{stroke-dasharray:3}#mermaid-svg-uzszNRrn1oJdMOVQ #compositionStart{fill:#9370db;stroke:#9370db;stroke-width:1}#mermaid-svg-uzszNRrn1oJdMOVQ #compositionEnd{fill:#9370db;stroke:#9370db;stroke-width:1}#mermaid-svg-uzszNRrn1oJdMOVQ #aggregationStart{fill:#ECECFF;stroke:#9370db;stroke-width:1}#mermaid-svg-uzszNRrn1oJdMOVQ #aggregationEnd{fill:#ECECFF;stroke:#9370db;stroke-width:1}#mermaid-svg-uzszNRrn1oJdMOVQ #dependencyStart{fill:#9370db;stroke:#9370db;stroke-width:1}#mermaid-svg-uzszNRrn1oJdMOVQ #dependencyEnd{fill:#9370db;stroke:#9370db;stroke-width:1}#mermaid-svg-uzszNRrn1oJdMOVQ #extensionStart{fill:#9370db;stroke:#9370db;stroke-width:1}#mermaid-svg-uzszNRrn1oJdMOVQ #extensionEnd{fill:#9370db;stroke:#9370db;stroke-width:1}#mermaid-svg-uzszNRrn1oJdMOVQ .commit-id,#mermaid-svg-uzszNRrn1oJdMOVQ .commit-msg,#mermaid-svg-uzszNRrn1oJdMOVQ .branch-label{fill:lightgrey;color:lightgrey;font-family:'trebuchet ms', verdana, arial;font-family:var(--mermaid-font-family)}#mermaid-svg-uzszNRrn1oJdMOVQ .pieTitleText{text-anchor:middle;font-size:25px;fill:#000;font-family:'trebuchet ms', verdana, arial;font-family:var(--mermaid-font-family)}#mermaid-svg-uzszNRrn1oJdMOVQ .slice{font-family:'trebuchet ms', verdana, arial;font-family:var(--mermaid-font-family)}#mermaid-svg-uzszNRrn1oJdMOVQ g.stateGroup text{fill:#9370db;stroke:none;font-size:10px;font-family:'trebuchet ms', verdana, arial;font-family:var(--mermaid-font-family)}#mermaid-svg-uzszNRrn1oJdMOVQ g.stateGroup text{fill:#9370db;fill:#333;stroke:none;font-size:10px}#mermaid-svg-uzszNRrn1oJdMOVQ g.statediagram-cluster .cluster-label text{fill:#333}#mermaid-svg-uzszNRrn1oJdMOVQ g.stateGroup .state-title{font-weight:bolder;fill:#000}#mermaid-svg-uzszNRrn1oJdMOVQ g.stateGroup rect{fill:#ECECFF;stroke:#9370db}#mermaid-svg-uzszNRrn1oJdMOVQ g.stateGroup line{stroke:#9370db;stroke-width:1}#mermaid-svg-uzszNRrn1oJdMOVQ .transition{stroke:#9370db;stroke-width:1;fill:none}#mermaid-svg-uzszNRrn1oJdMOVQ .stateGroup .composit{fill:white;border-bottom:1px}#mermaid-svg-uzszNRrn1oJdMOVQ .stateGroup .alt-composit{fill:#e0e0e0;border-bottom:1px}#mermaid-svg-uzszNRrn1oJdMOVQ .state-note{stroke:#aa3;fill:#fff5ad}#mermaid-svg-uzszNRrn1oJdMOVQ .state-note text{fill:black;stroke:none;font-size:10px}#mermaid-svg-uzszNRrn1oJdMOVQ .stateLabel .box{stroke:none;stroke-width:0;fill:#ECECFF;opacity:0.7}#mermaid-svg-uzszNRrn1oJdMOVQ .edgeLabel text{fill:#333}#mermaid-svg-uzszNRrn1oJdMOVQ .stateLabel text{fill:#000;font-size:10px;font-weight:bold;font-family:'trebuchet ms', verdana, arial;font-family:var(--mermaid-font-family)}#mermaid-svg-uzszNRrn1oJdMOVQ .node circle.state-start{fill:black;stroke:black}#mermaid-svg-uzszNRrn1oJdMOVQ .node circle.state-end{fill:black;stroke:white;stroke-width:1.5}#mermaid-svg-uzszNRrn1oJdMOVQ #statediagram-barbEnd{fill:#9370db}#mermaid-svg-uzszNRrn1oJdMOVQ .statediagram-cluster rect{fill:#ECECFF;stroke:#9370db;stroke-width:1px}#mermaid-svg-uzszNRrn1oJdMOVQ .statediagram-cluster rect.outer{rx:5px;ry:5px}#mermaid-svg-uzszNRrn1oJdMOVQ .statediagram-state .divider{stroke:#9370db}#mermaid-svg-uzszNRrn1oJdMOVQ .statediagram-state .title-state{rx:5px;ry:5px}#mermaid-svg-uzszNRrn1oJdMOVQ .statediagram-cluster.statediagram-cluster .inner{fill:white}#mermaid-svg-uzszNRrn1oJdMOVQ .statediagram-cluster.statediagram-cluster-alt .inner{fill:#e0e0e0}#mermaid-svg-uzszNRrn1oJdMOVQ .statediagram-cluster .inner{rx:0;ry:0}#mermaid-svg-uzszNRrn1oJdMOVQ .statediagram-state rect.basic{rx:5px;ry:5px}#mermaid-svg-uzszNRrn1oJdMOVQ .statediagram-state rect.divider{stroke-dasharray:10,10;fill:#efefef}#mermaid-svg-uzszNRrn1oJdMOVQ .note-edge{stroke-dasharray:5}#mermaid-svg-uzszNRrn1oJdMOVQ .statediagram-note rect{fill:#fff5ad;stroke:#aa3;stroke-width:1px;rx:0;ry:0}:root{--mermaid-font-family: '"trebuchet ms", verdana, arial';--mermaid-font-family: "Comic Sans MS", "Comic Sans", cursive}#mermaid-svg-uzszNRrn1oJdMOVQ .error-icon{fill:#522}#mermaid-svg-uzszNRrn1oJdMOVQ .error-text{fill:#522;stroke:#522}#mermaid-svg-uzszNRrn1oJdMOVQ .edge-thickness-normal{stroke-width:2px}#mermaid-svg-uzszNRrn1oJdMOVQ .edge-thickness-thick{stroke-width:3.5px}#mermaid-svg-uzszNRrn1oJdMOVQ .edge-pattern-solid{stroke-dasharray:0}#mermaid-svg-uzszNRrn1oJdMOVQ .edge-pattern-dashed{stroke-dasharray:3}#mermaid-svg-uzszNRrn1oJdMOVQ .edge-pattern-dotted{stroke-dasharray:2}#mermaid-svg-uzszNRrn1oJdMOVQ .marker{fill:#333}#mermaid-svg-uzszNRrn1oJdMOVQ .marker.cross{stroke:#333}:root { --mermaid-font-family: "trebuchet ms", verdana, arial;}#mermaid-svg-uzszNRrn1oJdMOVQ {color: rgba(0, 0, 0, 0.75);font: ;}TeacherStuStudentCoursealone关联Associationnn关联Association1n关联Association11
  • 聚合(Aggregation)

    • 整体与部分的关系,且部分可以离开整体而单独存在,如车和轮胎是整体和部分的关系,轮胎离开车仍然可以存在.
    • 聚合关系是关联关系的一种,是强关联;关联和聚合在语法上无法区分,必须考察具体的逻辑关系
    • 代码体现:成员变量
    • 箭头指向:带空心菱形的实心线菱形指向整体.
    • mermaid语法:A o-- B
#mermaid-svg-l8ffgNgr6lusCqzX .label{font-family:'trebuchet ms', verdana, arial;font-family:var(--mermaid-font-family);fill:#333;color:#333}#mermaid-svg-l8ffgNgr6lusCqzX .label text{fill:#333}#mermaid-svg-l8ffgNgr6lusCqzX .node rect,#mermaid-svg-l8ffgNgr6lusCqzX .node circle,#mermaid-svg-l8ffgNgr6lusCqzX .node ellipse,#mermaid-svg-l8ffgNgr6lusCqzX .node polygon,#mermaid-svg-l8ffgNgr6lusCqzX .node path{fill:#ECECFF;stroke:#9370db;stroke-width:1px}#mermaid-svg-l8ffgNgr6lusCqzX .node .label{text-align:center;fill:#333}#mermaid-svg-l8ffgNgr6lusCqzX .node.clickable{cursor:pointer}#mermaid-svg-l8ffgNgr6lusCqzX .arrowheadPath{fill:#333}#mermaid-svg-l8ffgNgr6lusCqzX .edgePath .path{stroke:#333;stroke-width:1.5px}#mermaid-svg-l8ffgNgr6lusCqzX .flowchart-link{stroke:#333;fill:none}#mermaid-svg-l8ffgNgr6lusCqzX .edgeLabel{background-color:#e8e8e8;text-align:center}#mermaid-svg-l8ffgNgr6lusCqzX .edgeLabel rect{opacity:0.9}#mermaid-svg-l8ffgNgr6lusCqzX .edgeLabel span{color:#333}#mermaid-svg-l8ffgNgr6lusCqzX .cluster rect{fill:#ffffde;stroke:#aa3;stroke-width:1px}#mermaid-svg-l8ffgNgr6lusCqzX .cluster text{fill:#333}#mermaid-svg-l8ffgNgr6lusCqzX div.mermaidTooltip{position:absolute;text-align:center;max-width:200px;padding:2px;font-family:'trebuchet ms', verdana, arial;font-family:var(--mermaid-font-family);font-size:12px;background:#ffffde;border:1px solid #aa3;border-radius:2px;pointer-events:none;z-index:100}#mermaid-svg-l8ffgNgr6lusCqzX .actor{stroke:#ccf;fill:#ECECFF}#mermaid-svg-l8ffgNgr6lusCqzX text.actor>tspan{fill:#000;stroke:none}#mermaid-svg-l8ffgNgr6lusCqzX .actor-line{stroke:grey}#mermaid-svg-l8ffgNgr6lusCqzX .messageLine0{stroke-width:1.5;stroke-dasharray:none;stroke:#333}#mermaid-svg-l8ffgNgr6lusCqzX .messageLine1{stroke-width:1.5;stroke-dasharray:2, 2;stroke:#333}#mermaid-svg-l8ffgNgr6lusCqzX #arrowhead path{fill:#333;stroke:#333}#mermaid-svg-l8ffgNgr6lusCqzX .sequenceNumber{fill:#fff}#mermaid-svg-l8ffgNgr6lusCqzX #sequencenumber{fill:#333}#mermaid-svg-l8ffgNgr6lusCqzX #crosshead path{fill:#333;stroke:#333}#mermaid-svg-l8ffgNgr6lusCqzX .messageText{fill:#333;stroke:#333}#mermaid-svg-l8ffgNgr6lusCqzX .labelBox{stroke:#ccf;fill:#ECECFF}#mermaid-svg-l8ffgNgr6lusCqzX .labelText,#mermaid-svg-l8ffgNgr6lusCqzX .labelText>tspan{fill:#000;stroke:none}#mermaid-svg-l8ffgNgr6lusCqzX .loopText,#mermaid-svg-l8ffgNgr6lusCqzX .loopText>tspan{fill:#000;stroke:none}#mermaid-svg-l8ffgNgr6lusCqzX .loopLine{stroke-width:2px;stroke-dasharray:2, 2;stroke:#ccf;fill:#ccf}#mermaid-svg-l8ffgNgr6lusCqzX .note{stroke:#aa3;fill:#fff5ad}#mermaid-svg-l8ffgNgr6lusCqzX .noteText,#mermaid-svg-l8ffgNgr6lusCqzX .noteText>tspan{fill:#000;stroke:none}#mermaid-svg-l8ffgNgr6lusCqzX .activation0{fill:#f4f4f4;stroke:#666}#mermaid-svg-l8ffgNgr6lusCqzX .activation1{fill:#f4f4f4;stroke:#666}#mermaid-svg-l8ffgNgr6lusCqzX .activation2{fill:#f4f4f4;stroke:#666}#mermaid-svg-l8ffgNgr6lusCqzX .mermaid-main-font{font-family:"trebuchet ms", verdana, arial;font-family:var(--mermaid-font-family)}#mermaid-svg-l8ffgNgr6lusCqzX .section{stroke:none;opacity:0.2}#mermaid-svg-l8ffgNgr6lusCqzX .section0{fill:rgba(102,102,255,0.49)}#mermaid-svg-l8ffgNgr6lusCqzX .section2{fill:#fff400}#mermaid-svg-l8ffgNgr6lusCqzX .section1,#mermaid-svg-l8ffgNgr6lusCqzX .section3{fill:#fff;opacity:0.2}#mermaid-svg-l8ffgNgr6lusCqzX .sectionTitle0{fill:#333}#mermaid-svg-l8ffgNgr6lusCqzX .sectionTitle1{fill:#333}#mermaid-svg-l8ffgNgr6lusCqzX .sectionTitle2{fill:#333}#mermaid-svg-l8ffgNgr6lusCqzX .sectionTitle3{fill:#333}#mermaid-svg-l8ffgNgr6lusCqzX .sectionTitle{text-anchor:start;font-size:11px;text-height:14px;font-family:'trebuchet ms', verdana, arial;font-family:var(--mermaid-font-family)}#mermaid-svg-l8ffgNgr6lusCqzX .grid .tick{stroke:#d3d3d3;opacity:0.8;shape-rendering:crispEdges}#mermaid-svg-l8ffgNgr6lusCqzX .grid .tick text{font-family:'trebuchet ms', verdana, arial;font-family:var(--mermaid-font-family)}#mermaid-svg-l8ffgNgr6lusCqzX .grid path{stroke-width:0}#mermaid-svg-l8ffgNgr6lusCqzX .today{fill:none;stroke:red;stroke-width:2px}#mermaid-svg-l8ffgNgr6lusCqzX .task{stroke-width:2}#mermaid-svg-l8ffgNgr6lusCqzX .taskText{text-anchor:middle;font-family:'trebuchet ms', verdana, arial;font-family:var(--mermaid-font-family)}#mermaid-svg-l8ffgNgr6lusCqzX .taskText:not([font-size]){font-size:11px}#mermaid-svg-l8ffgNgr6lusCqzX .taskTextOutsideRight{fill:#000;text-anchor:start;font-size:11px;font-family:'trebuchet ms', verdana, arial;font-family:var(--mermaid-font-family)}#mermaid-svg-l8ffgNgr6lusCqzX .taskTextOutsideLeft{fill:#000;text-anchor:end;font-size:11px}#mermaid-svg-l8ffgNgr6lusCqzX .task.clickable{cursor:pointer}#mermaid-svg-l8ffgNgr6lusCqzX .taskText.clickable{cursor:pointer;fill:#003163 !important;font-weight:bold}#mermaid-svg-l8ffgNgr6lusCqzX .taskTextOutsideLeft.clickable{cursor:pointer;fill:#003163 !important;font-weight:bold}#mermaid-svg-l8ffgNgr6lusCqzX .taskTextOutsideRight.clickable{cursor:pointer;fill:#003163 !important;font-weight:bold}#mermaid-svg-l8ffgNgr6lusCqzX .taskText0,#mermaid-svg-l8ffgNgr6lusCqzX .taskText1,#mermaid-svg-l8ffgNgr6lusCqzX .taskText2,#mermaid-svg-l8ffgNgr6lusCqzX .taskText3{fill:#fff}#mermaid-svg-l8ffgNgr6lusCqzX .task0,#mermaid-svg-l8ffgNgr6lusCqzX .task1,#mermaid-svg-l8ffgNgr6lusCqzX .task2,#mermaid-svg-l8ffgNgr6lusCqzX .task3{fill:#8a90dd;stroke:#534fbc}#mermaid-svg-l8ffgNgr6lusCqzX .taskTextOutside0,#mermaid-svg-l8ffgNgr6lusCqzX .taskTextOutside2{fill:#000}#mermaid-svg-l8ffgNgr6lusCqzX .taskTextOutside1,#mermaid-svg-l8ffgNgr6lusCqzX .taskTextOutside3{fill:#000}#mermaid-svg-l8ffgNgr6lusCqzX .active0,#mermaid-svg-l8ffgNgr6lusCqzX .active1,#mermaid-svg-l8ffgNgr6lusCqzX .active2,#mermaid-svg-l8ffgNgr6lusCqzX .active3{fill:#bfc7ff;stroke:#534fbc}#mermaid-svg-l8ffgNgr6lusCqzX .activeText0,#mermaid-svg-l8ffgNgr6lusCqzX .activeText1,#mermaid-svg-l8ffgNgr6lusCqzX .activeText2,#mermaid-svg-l8ffgNgr6lusCqzX .activeText3{fill:#000 !important}#mermaid-svg-l8ffgNgr6lusCqzX .done0,#mermaid-svg-l8ffgNgr6lusCqzX .done1,#mermaid-svg-l8ffgNgr6lusCqzX .done2,#mermaid-svg-l8ffgNgr6lusCqzX .done3{stroke:grey;fill:#d3d3d3;stroke-width:2}#mermaid-svg-l8ffgNgr6lusCqzX .doneText0,#mermaid-svg-l8ffgNgr6lusCqzX .doneText1,#mermaid-svg-l8ffgNgr6lusCqzX .doneText2,#mermaid-svg-l8ffgNgr6lusCqzX .doneText3{fill:#000 !important}#mermaid-svg-l8ffgNgr6lusCqzX .crit0,#mermaid-svg-l8ffgNgr6lusCqzX .crit1,#mermaid-svg-l8ffgNgr6lusCqzX .crit2,#mermaid-svg-l8ffgNgr6lusCqzX .crit3{stroke:#f88;fill:red;stroke-width:2}#mermaid-svg-l8ffgNgr6lusCqzX .activeCrit0,#mermaid-svg-l8ffgNgr6lusCqzX .activeCrit1,#mermaid-svg-l8ffgNgr6lusCqzX .activeCrit2,#mermaid-svg-l8ffgNgr6lusCqzX .activeCrit3{stroke:#f88;fill:#bfc7ff;stroke-width:2}#mermaid-svg-l8ffgNgr6lusCqzX .doneCrit0,#mermaid-svg-l8ffgNgr6lusCqzX .doneCrit1,#mermaid-svg-l8ffgNgr6lusCqzX .doneCrit2,#mermaid-svg-l8ffgNgr6lusCqzX .doneCrit3{stroke:#f88;fill:#d3d3d3;stroke-width:2;cursor:pointer;shape-rendering:crispEdges}#mermaid-svg-l8ffgNgr6lusCqzX .milestone{transform:rotate(45deg) scale(0.8, 0.8)}#mermaid-svg-l8ffgNgr6lusCqzX .milestoneText{font-style:italic}#mermaid-svg-l8ffgNgr6lusCqzX .doneCritText0,#mermaid-svg-l8ffgNgr6lusCqzX .doneCritText1,#mermaid-svg-l8ffgNgr6lusCqzX .doneCritText2,#mermaid-svg-l8ffgNgr6lusCqzX .doneCritText3{fill:#000 !important}#mermaid-svg-l8ffgNgr6lusCqzX .activeCritText0,#mermaid-svg-l8ffgNgr6lusCqzX .activeCritText1,#mermaid-svg-l8ffgNgr6lusCqzX .activeCritText2,#mermaid-svg-l8ffgNgr6lusCqzX .activeCritText3{fill:#000 !important}#mermaid-svg-l8ffgNgr6lusCqzX .titleText{text-anchor:middle;font-size:18px;fill:#000;font-family:'trebuchet ms', verdana, arial;font-family:var(--mermaid-font-family)}#mermaid-svg-l8ffgNgr6lusCqzX g.classGroup text{fill:#9370db;stroke:none;font-family:'trebuchet ms', verdana, arial;font-family:var(--mermaid-font-family);font-size:10px}#mermaid-svg-l8ffgNgr6lusCqzX g.classGroup text .title{font-weight:bolder}#mermaid-svg-l8ffgNgr6lusCqzX g.clickable{cursor:pointer}#mermaid-svg-l8ffgNgr6lusCqzX g.classGroup rect{fill:#ECECFF;stroke:#9370db}#mermaid-svg-l8ffgNgr6lusCqzX g.classGroup line{stroke:#9370db;stroke-width:1}#mermaid-svg-l8ffgNgr6lusCqzX .classLabel .box{stroke:none;stroke-width:0;fill:#ECECFF;opacity:0.5}#mermaid-svg-l8ffgNgr6lusCqzX .classLabel .label{fill:#9370db;font-size:10px}#mermaid-svg-l8ffgNgr6lusCqzX .relation{stroke:#9370db;stroke-width:1;fill:none}#mermaid-svg-l8ffgNgr6lusCqzX .dashed-line{stroke-dasharray:3}#mermaid-svg-l8ffgNgr6lusCqzX #compositionStart{fill:#9370db;stroke:#9370db;stroke-width:1}#mermaid-svg-l8ffgNgr6lusCqzX #compositionEnd{fill:#9370db;stroke:#9370db;stroke-width:1}#mermaid-svg-l8ffgNgr6lusCqzX #aggregationStart{fill:#ECECFF;stroke:#9370db;stroke-width:1}#mermaid-svg-l8ffgNgr6lusCqzX #aggregationEnd{fill:#ECECFF;stroke:#9370db;stroke-width:1}#mermaid-svg-l8ffgNgr6lusCqzX #dependencyStart{fill:#9370db;stroke:#9370db;stroke-width:1}#mermaid-svg-l8ffgNgr6lusCqzX #dependencyEnd{fill:#9370db;stroke:#9370db;stroke-width:1}#mermaid-svg-l8ffgNgr6lusCqzX #extensionStart{fill:#9370db;stroke:#9370db;stroke-width:1}#mermaid-svg-l8ffgNgr6lusCqzX #extensionEnd{fill:#9370db;stroke:#9370db;stroke-width:1}#mermaid-svg-l8ffgNgr6lusCqzX .commit-id,#mermaid-svg-l8ffgNgr6lusCqzX .commit-msg,#mermaid-svg-l8ffgNgr6lusCqzX .branch-label{fill:lightgrey;color:lightgrey;font-family:'trebuchet ms', verdana, arial;font-family:var(--mermaid-font-family)}#mermaid-svg-l8ffgNgr6lusCqzX .pieTitleText{text-anchor:middle;font-size:25px;fill:#000;font-family:'trebuchet ms', verdana, arial;font-family:var(--mermaid-font-family)}#mermaid-svg-l8ffgNgr6lusCqzX .slice{font-family:'trebuchet ms', verdana, arial;font-family:var(--mermaid-font-family)}#mermaid-svg-l8ffgNgr6lusCqzX g.stateGroup text{fill:#9370db;stroke:none;font-size:10px;font-family:'trebuchet ms', verdana, arial;font-family:var(--mermaid-font-family)}#mermaid-svg-l8ffgNgr6lusCqzX g.stateGroup text{fill:#9370db;fill:#333;stroke:none;font-size:10px}#mermaid-svg-l8ffgNgr6lusCqzX g.statediagram-cluster .cluster-label text{fill:#333}#mermaid-svg-l8ffgNgr6lusCqzX g.stateGroup .state-title{font-weight:bolder;fill:#000}#mermaid-svg-l8ffgNgr6lusCqzX g.stateGroup rect{fill:#ECECFF;stroke:#9370db}#mermaid-svg-l8ffgNgr6lusCqzX g.stateGroup line{stroke:#9370db;stroke-width:1}#mermaid-svg-l8ffgNgr6lusCqzX .transition{stroke:#9370db;stroke-width:1;fill:none}#mermaid-svg-l8ffgNgr6lusCqzX .stateGroup .composit{fill:white;border-bottom:1px}#mermaid-svg-l8ffgNgr6lusCqzX .stateGroup .alt-composit{fill:#e0e0e0;border-bottom:1px}#mermaid-svg-l8ffgNgr6lusCqzX .state-note{stroke:#aa3;fill:#fff5ad}#mermaid-svg-l8ffgNgr6lusCqzX .state-note text{fill:black;stroke:none;font-size:10px}#mermaid-svg-l8ffgNgr6lusCqzX .stateLabel .box{stroke:none;stroke-width:0;fill:#ECECFF;opacity:0.7}#mermaid-svg-l8ffgNgr6lusCqzX .edgeLabel text{fill:#333}#mermaid-svg-l8ffgNgr6lusCqzX .stateLabel text{fill:#000;font-size:10px;font-weight:bold;font-family:'trebuchet ms', verdana, arial;font-family:var(--mermaid-font-family)}#mermaid-svg-l8ffgNgr6lusCqzX .node circle.state-start{fill:black;stroke:black}#mermaid-svg-l8ffgNgr6lusCqzX .node circle.state-end{fill:black;stroke:white;stroke-width:1.5}#mermaid-svg-l8ffgNgr6lusCqzX #statediagram-barbEnd{fill:#9370db}#mermaid-svg-l8ffgNgr6lusCqzX .statediagram-cluster rect{fill:#ECECFF;stroke:#9370db;stroke-width:1px}#mermaid-svg-l8ffgNgr6lusCqzX .statediagram-cluster rect.outer{rx:5px;ry:5px}#mermaid-svg-l8ffgNgr6lusCqzX .statediagram-state .divider{stroke:#9370db}#mermaid-svg-l8ffgNgr6lusCqzX .statediagram-state .title-state{rx:5px;ry:5px}#mermaid-svg-l8ffgNgr6lusCqzX .statediagram-cluster.statediagram-cluster .inner{fill:white}#mermaid-svg-l8ffgNgr6lusCqzX .statediagram-cluster.statediagram-cluster-alt .inner{fill:#e0e0e0}#mermaid-svg-l8ffgNgr6lusCqzX .statediagram-cluster .inner{rx:0;ry:0}#mermaid-svg-l8ffgNgr6lusCqzX .statediagram-state rect.basic{rx:5px;ry:5px}#mermaid-svg-l8ffgNgr6lusCqzX .statediagram-state rect.divider{stroke-dasharray:10,10;fill:#efefef}#mermaid-svg-l8ffgNgr6lusCqzX .note-edge{stroke-dasharray:5}#mermaid-svg-l8ffgNgr6lusCqzX .statediagram-note rect{fill:#fff5ad;stroke:#aa3;stroke-width:1px;rx:0;ry:0}:root{--mermaid-font-family: '"trebuchet ms", verdana, arial';--mermaid-font-family: "Comic Sans MS", "Comic Sans", cursive}#mermaid-svg-l8ffgNgr6lusCqzX .error-icon{fill:#522}#mermaid-svg-l8ffgNgr6lusCqzX .error-text{fill:#522;stroke:#522}#mermaid-svg-l8ffgNgr6lusCqzX .edge-thickness-normal{stroke-width:2px}#mermaid-svg-l8ffgNgr6lusCqzX .edge-thickness-thick{stroke-width:3.5px}#mermaid-svg-l8ffgNgr6lusCqzX .edge-pattern-solid{stroke-dasharray:0}#mermaid-svg-l8ffgNgr6lusCqzX .edge-pattern-dashed{stroke-dasharray:3}#mermaid-svg-l8ffgNgr6lusCqzX .edge-pattern-dotted{stroke-dasharray:2}#mermaid-svg-l8ffgNgr6lusCqzX .marker{fill:#333}#mermaid-svg-l8ffgNgr6lusCqzX .marker.cross{stroke:#333}:root { --mermaid-font-family: "trebuchet ms", verdana, arial;}#mermaid-svg-l8ffgNgr6lusCqzX {color: rgba(0, 0, 0, 0.75);font: ;}Car引擎轮胎1114
  • 组合(Composition)

    • 是整体与部分的关系,但部分不能离开整体而单独存在.如公司和部门是整体和部分的关系,没有公司就不存在部门。
    • 组合关系是关联关系的一种,是比聚合关系还要强的关系.最强的关联关系
    • 要求普通的聚合关系中代表整体的对象负责代表部分的对象的生命周期
    • 代码体现:成员变量
    • 箭头指向:带实心菱形的实线菱形指向整体
    • mermaid语法:A "1" *-- "n" B
#mermaid-svg-Nj1Ku1xdLNyu2vi6 .label{font-family:'trebuchet ms', verdana, arial;font-family:var(--mermaid-font-family);fill:#333;color:#333}#mermaid-svg-Nj1Ku1xdLNyu2vi6 .label text{fill:#333}#mermaid-svg-Nj1Ku1xdLNyu2vi6 .node rect,#mermaid-svg-Nj1Ku1xdLNyu2vi6 .node circle,#mermaid-svg-Nj1Ku1xdLNyu2vi6 .node ellipse,#mermaid-svg-Nj1Ku1xdLNyu2vi6 .node polygon,#mermaid-svg-Nj1Ku1xdLNyu2vi6 .node path{fill:#ECECFF;stroke:#9370db;stroke-width:1px}#mermaid-svg-Nj1Ku1xdLNyu2vi6 .node .label{text-align:center;fill:#333}#mermaid-svg-Nj1Ku1xdLNyu2vi6 .node.clickable{cursor:pointer}#mermaid-svg-Nj1Ku1xdLNyu2vi6 .arrowheadPath{fill:#333}#mermaid-svg-Nj1Ku1xdLNyu2vi6 .edgePath .path{stroke:#333;stroke-width:1.5px}#mermaid-svg-Nj1Ku1xdLNyu2vi6 .flowchart-link{stroke:#333;fill:none}#mermaid-svg-Nj1Ku1xdLNyu2vi6 .edgeLabel{background-color:#e8e8e8;text-align:center}#mermaid-svg-Nj1Ku1xdLNyu2vi6 .edgeLabel rect{opacity:0.9}#mermaid-svg-Nj1Ku1xdLNyu2vi6 .edgeLabel span{color:#333}#mermaid-svg-Nj1Ku1xdLNyu2vi6 .cluster rect{fill:#ffffde;stroke:#aa3;stroke-width:1px}#mermaid-svg-Nj1Ku1xdLNyu2vi6 .cluster text{fill:#333}#mermaid-svg-Nj1Ku1xdLNyu2vi6 div.mermaidTooltip{position:absolute;text-align:center;max-width:200px;padding:2px;font-family:'trebuchet ms', verdana, arial;font-family:var(--mermaid-font-family);font-size:12px;background:#ffffde;border:1px solid #aa3;border-radius:2px;pointer-events:none;z-index:100}#mermaid-svg-Nj1Ku1xdLNyu2vi6 .actor{stroke:#ccf;fill:#ECECFF}#mermaid-svg-Nj1Ku1xdLNyu2vi6 text.actor>tspan{fill:#000;stroke:none}#mermaid-svg-Nj1Ku1xdLNyu2vi6 .actor-line{stroke:grey}#mermaid-svg-Nj1Ku1xdLNyu2vi6 .messageLine0{stroke-width:1.5;stroke-dasharray:none;stroke:#333}#mermaid-svg-Nj1Ku1xdLNyu2vi6 .messageLine1{stroke-width:1.5;stroke-dasharray:2, 2;stroke:#333}#mermaid-svg-Nj1Ku1xdLNyu2vi6 #arrowhead path{fill:#333;stroke:#333}#mermaid-svg-Nj1Ku1xdLNyu2vi6 .sequenceNumber{fill:#fff}#mermaid-svg-Nj1Ku1xdLNyu2vi6 #sequencenumber{fill:#333}#mermaid-svg-Nj1Ku1xdLNyu2vi6 #crosshead path{fill:#333;stroke:#333}#mermaid-svg-Nj1Ku1xdLNyu2vi6 .messageText{fill:#333;stroke:#333}#mermaid-svg-Nj1Ku1xdLNyu2vi6 .labelBox{stroke:#ccf;fill:#ECECFF}#mermaid-svg-Nj1Ku1xdLNyu2vi6 .labelText,#mermaid-svg-Nj1Ku1xdLNyu2vi6 .labelText>tspan{fill:#000;stroke:none}#mermaid-svg-Nj1Ku1xdLNyu2vi6 .loopText,#mermaid-svg-Nj1Ku1xdLNyu2vi6 .loopText>tspan{fill:#000;stroke:none}#mermaid-svg-Nj1Ku1xdLNyu2vi6 .loopLine{stroke-width:2px;stroke-dasharray:2, 2;stroke:#ccf;fill:#ccf}#mermaid-svg-Nj1Ku1xdLNyu2vi6 .note{stroke:#aa3;fill:#fff5ad}#mermaid-svg-Nj1Ku1xdLNyu2vi6 .noteText,#mermaid-svg-Nj1Ku1xdLNyu2vi6 .noteText>tspan{fill:#000;stroke:none}#mermaid-svg-Nj1Ku1xdLNyu2vi6 .activation0{fill:#f4f4f4;stroke:#666}#mermaid-svg-Nj1Ku1xdLNyu2vi6 .activation1{fill:#f4f4f4;stroke:#666}#mermaid-svg-Nj1Ku1xdLNyu2vi6 .activation2{fill:#f4f4f4;stroke:#666}#mermaid-svg-Nj1Ku1xdLNyu2vi6 .mermaid-main-font{font-family:"trebuchet ms", verdana, arial;font-family:var(--mermaid-font-family)}#mermaid-svg-Nj1Ku1xdLNyu2vi6 .section{stroke:none;opacity:0.2}#mermaid-svg-Nj1Ku1xdLNyu2vi6 .section0{fill:rgba(102,102,255,0.49)}#mermaid-svg-Nj1Ku1xdLNyu2vi6 .section2{fill:#fff400}#mermaid-svg-Nj1Ku1xdLNyu2vi6 .section1,#mermaid-svg-Nj1Ku1xdLNyu2vi6 .section3{fill:#fff;opacity:0.2}#mermaid-svg-Nj1Ku1xdLNyu2vi6 .sectionTitle0{fill:#333}#mermaid-svg-Nj1Ku1xdLNyu2vi6 .sectionTitle1{fill:#333}#mermaid-svg-Nj1Ku1xdLNyu2vi6 .sectionTitle2{fill:#333}#mermaid-svg-Nj1Ku1xdLNyu2vi6 .sectionTitle3{fill:#333}#mermaid-svg-Nj1Ku1xdLNyu2vi6 .sectionTitle{text-anchor:start;font-size:11px;text-height:14px;font-family:'trebuchet ms', verdana, arial;font-family:var(--mermaid-font-family)}#mermaid-svg-Nj1Ku1xdLNyu2vi6 .grid .tick{stroke:#d3d3d3;opacity:0.8;shape-rendering:crispEdges}#mermaid-svg-Nj1Ku1xdLNyu2vi6 .grid .tick text{font-family:'trebuchet ms', verdana, arial;font-family:var(--mermaid-font-family)}#mermaid-svg-Nj1Ku1xdLNyu2vi6 .grid path{stroke-width:0}#mermaid-svg-Nj1Ku1xdLNyu2vi6 .today{fill:none;stroke:red;stroke-width:2px}#mermaid-svg-Nj1Ku1xdLNyu2vi6 .task{stroke-width:2}#mermaid-svg-Nj1Ku1xdLNyu2vi6 .taskText{text-anchor:middle;font-family:'trebuchet ms', verdana, arial;font-family:var(--mermaid-font-family)}#mermaid-svg-Nj1Ku1xdLNyu2vi6 .taskText:not([font-size]){font-size:11px}#mermaid-svg-Nj1Ku1xdLNyu2vi6 .taskTextOutsideRight{fill:#000;text-anchor:start;font-size:11px;font-family:'trebuchet ms', verdana, arial;font-family:var(--mermaid-font-family)}#mermaid-svg-Nj1Ku1xdLNyu2vi6 .taskTextOutsideLeft{fill:#000;text-anchor:end;font-size:11px}#mermaid-svg-Nj1Ku1xdLNyu2vi6 .task.clickable{cursor:pointer}#mermaid-svg-Nj1Ku1xdLNyu2vi6 .taskText.clickable{cursor:pointer;fill:#003163 !important;font-weight:bold}#mermaid-svg-Nj1Ku1xdLNyu2vi6 .taskTextOutsideLeft.clickable{cursor:pointer;fill:#003163 !important;font-weight:bold}#mermaid-svg-Nj1Ku1xdLNyu2vi6 .taskTextOutsideRight.clickable{cursor:pointer;fill:#003163 !important;font-weight:bold}#mermaid-svg-Nj1Ku1xdLNyu2vi6 .taskText0,#mermaid-svg-Nj1Ku1xdLNyu2vi6 .taskText1,#mermaid-svg-Nj1Ku1xdLNyu2vi6 .taskText2,#mermaid-svg-Nj1Ku1xdLNyu2vi6 .taskText3{fill:#fff}#mermaid-svg-Nj1Ku1xdLNyu2vi6 .task0,#mermaid-svg-Nj1Ku1xdLNyu2vi6 .task1,#mermaid-svg-Nj1Ku1xdLNyu2vi6 .task2,#mermaid-svg-Nj1Ku1xdLNyu2vi6 .task3{fill:#8a90dd;stroke:#534fbc}#mermaid-svg-Nj1Ku1xdLNyu2vi6 .taskTextOutside0,#mermaid-svg-Nj1Ku1xdLNyu2vi6 .taskTextOutside2{fill:#000}#mermaid-svg-Nj1Ku1xdLNyu2vi6 .taskTextOutside1,#mermaid-svg-Nj1Ku1xdLNyu2vi6 .taskTextOutside3{fill:#000}#mermaid-svg-Nj1Ku1xdLNyu2vi6 .active0,#mermaid-svg-Nj1Ku1xdLNyu2vi6 .active1,#mermaid-svg-Nj1Ku1xdLNyu2vi6 .active2,#mermaid-svg-Nj1Ku1xdLNyu2vi6 .active3{fill:#bfc7ff;stroke:#534fbc}#mermaid-svg-Nj1Ku1xdLNyu2vi6 .activeText0,#mermaid-svg-Nj1Ku1xdLNyu2vi6 .activeText1,#mermaid-svg-Nj1Ku1xdLNyu2vi6 .activeText2,#mermaid-svg-Nj1Ku1xdLNyu2vi6 .activeText3{fill:#000 !important}#mermaid-svg-Nj1Ku1xdLNyu2vi6 .done0,#mermaid-svg-Nj1Ku1xdLNyu2vi6 .done1,#mermaid-svg-Nj1Ku1xdLNyu2vi6 .done2,#mermaid-svg-Nj1Ku1xdLNyu2vi6 .done3{stroke:grey;fill:#d3d3d3;stroke-width:2}#mermaid-svg-Nj1Ku1xdLNyu2vi6 .doneText0,#mermaid-svg-Nj1Ku1xdLNyu2vi6 .doneText1,#mermaid-svg-Nj1Ku1xdLNyu2vi6 .doneText2,#mermaid-svg-Nj1Ku1xdLNyu2vi6 .doneText3{fill:#000 !important}#mermaid-svg-Nj1Ku1xdLNyu2vi6 .crit0,#mermaid-svg-Nj1Ku1xdLNyu2vi6 .crit1,#mermaid-svg-Nj1Ku1xdLNyu2vi6 .crit2,#mermaid-svg-Nj1Ku1xdLNyu2vi6 .crit3{stroke:#f88;fill:red;stroke-width:2}#mermaid-svg-Nj1Ku1xdLNyu2vi6 .activeCrit0,#mermaid-svg-Nj1Ku1xdLNyu2vi6 .activeCrit1,#mermaid-svg-Nj1Ku1xdLNyu2vi6 .activeCrit2,#mermaid-svg-Nj1Ku1xdLNyu2vi6 .activeCrit3{stroke:#f88;fill:#bfc7ff;stroke-width:2}#mermaid-svg-Nj1Ku1xdLNyu2vi6 .doneCrit0,#mermaid-svg-Nj1Ku1xdLNyu2vi6 .doneCrit1,#mermaid-svg-Nj1Ku1xdLNyu2vi6 .doneCrit2,#mermaid-svg-Nj1Ku1xdLNyu2vi6 .doneCrit3{stroke:#f88;fill:#d3d3d3;stroke-width:2;cursor:pointer;shape-rendering:crispEdges}#mermaid-svg-Nj1Ku1xdLNyu2vi6 .milestone{transform:rotate(45deg) scale(0.8, 0.8)}#mermaid-svg-Nj1Ku1xdLNyu2vi6 .milestoneText{font-style:italic}#mermaid-svg-Nj1Ku1xdLNyu2vi6 .doneCritText0,#mermaid-svg-Nj1Ku1xdLNyu2vi6 .doneCritText1,#mermaid-svg-Nj1Ku1xdLNyu2vi6 .doneCritText2,#mermaid-svg-Nj1Ku1xdLNyu2vi6 .doneCritText3{fill:#000 !important}#mermaid-svg-Nj1Ku1xdLNyu2vi6 .activeCritText0,#mermaid-svg-Nj1Ku1xdLNyu2vi6 .activeCritText1,#mermaid-svg-Nj1Ku1xdLNyu2vi6 .activeCritText2,#mermaid-svg-Nj1Ku1xdLNyu2vi6 .activeCritText3{fill:#000 !important}#mermaid-svg-Nj1Ku1xdLNyu2vi6 .titleText{text-anchor:middle;font-size:18px;fill:#000;font-family:'trebuchet ms', verdana, arial;font-family:var(--mermaid-font-family)}#mermaid-svg-Nj1Ku1xdLNyu2vi6 g.classGroup text{fill:#9370db;stroke:none;font-family:'trebuchet ms', verdana, arial;font-family:var(--mermaid-font-family);font-size:10px}#mermaid-svg-Nj1Ku1xdLNyu2vi6 g.classGroup text .title{font-weight:bolder}#mermaid-svg-Nj1Ku1xdLNyu2vi6 g.clickable{cursor:pointer}#mermaid-svg-Nj1Ku1xdLNyu2vi6 g.classGroup rect{fill:#ECECFF;stroke:#9370db}#mermaid-svg-Nj1Ku1xdLNyu2vi6 g.classGroup line{stroke:#9370db;stroke-width:1}#mermaid-svg-Nj1Ku1xdLNyu2vi6 .classLabel .box{stroke:none;stroke-width:0;fill:#ECECFF;opacity:0.5}#mermaid-svg-Nj1Ku1xdLNyu2vi6 .classLabel .label{fill:#9370db;font-size:10px}#mermaid-svg-Nj1Ku1xdLNyu2vi6 .relation{stroke:#9370db;stroke-width:1;fill:none}#mermaid-svg-Nj1Ku1xdLNyu2vi6 .dashed-line{stroke-dasharray:3}#mermaid-svg-Nj1Ku1xdLNyu2vi6 #compositionStart{fill:#9370db;stroke:#9370db;stroke-width:1}#mermaid-svg-Nj1Ku1xdLNyu2vi6 #compositionEnd{fill:#9370db;stroke:#9370db;stroke-width:1}#mermaid-svg-Nj1Ku1xdLNyu2vi6 #aggregationStart{fill:#ECECFF;stroke:#9370db;stroke-width:1}#mermaid-svg-Nj1Ku1xdLNyu2vi6 #aggregationEnd{fill:#ECECFF;stroke:#9370db;stroke-width:1}#mermaid-svg-Nj1Ku1xdLNyu2vi6 #dependencyStart{fill:#9370db;stroke:#9370db;stroke-width:1}#mermaid-svg-Nj1Ku1xdLNyu2vi6 #dependencyEnd{fill:#9370db;stroke:#9370db;stroke-width:1}#mermaid-svg-Nj1Ku1xdLNyu2vi6 #extensionStart{fill:#9370db;stroke:#9370db;stroke-width:1}#mermaid-svg-Nj1Ku1xdLNyu2vi6 #extensionEnd{fill:#9370db;stroke:#9370db;stroke-width:1}#mermaid-svg-Nj1Ku1xdLNyu2vi6 .commit-id,#mermaid-svg-Nj1Ku1xdLNyu2vi6 .commit-msg,#mermaid-svg-Nj1Ku1xdLNyu2vi6 .branch-label{fill:lightgrey;color:lightgrey;font-family:'trebuchet ms', verdana, arial;font-family:var(--mermaid-font-family)}#mermaid-svg-Nj1Ku1xdLNyu2vi6 .pieTitleText{text-anchor:middle;font-size:25px;fill:#000;font-family:'trebuchet ms', verdana, arial;font-family:var(--mermaid-font-family)}#mermaid-svg-Nj1Ku1xdLNyu2vi6 .slice{font-family:'trebuchet ms', verdana, arial;font-family:var(--mermaid-font-family)}#mermaid-svg-Nj1Ku1xdLNyu2vi6 g.stateGroup text{fill:#9370db;stroke:none;font-size:10px;font-family:'trebuchet ms', verdana, arial;font-family:var(--mermaid-font-family)}#mermaid-svg-Nj1Ku1xdLNyu2vi6 g.stateGroup text{fill:#9370db;fill:#333;stroke:none;font-size:10px}#mermaid-svg-Nj1Ku1xdLNyu2vi6 g.statediagram-cluster .cluster-label text{fill:#333}#mermaid-svg-Nj1Ku1xdLNyu2vi6 g.stateGroup .state-title{font-weight:bolder;fill:#000}#mermaid-svg-Nj1Ku1xdLNyu2vi6 g.stateGroup rect{fill:#ECECFF;stroke:#9370db}#mermaid-svg-Nj1Ku1xdLNyu2vi6 g.stateGroup line{stroke:#9370db;stroke-width:1}#mermaid-svg-Nj1Ku1xdLNyu2vi6 .transition{stroke:#9370db;stroke-width:1;fill:none}#mermaid-svg-Nj1Ku1xdLNyu2vi6 .stateGroup .composit{fill:white;border-bottom:1px}#mermaid-svg-Nj1Ku1xdLNyu2vi6 .stateGroup .alt-composit{fill:#e0e0e0;border-bottom:1px}#mermaid-svg-Nj1Ku1xdLNyu2vi6 .state-note{stroke:#aa3;fill:#fff5ad}#mermaid-svg-Nj1Ku1xdLNyu2vi6 .state-note text{fill:black;stroke:none;font-size:10px}#mermaid-svg-Nj1Ku1xdLNyu2vi6 .stateLabel .box{stroke:none;stroke-width:0;fill:#ECECFF;opacity:0.7}#mermaid-svg-Nj1Ku1xdLNyu2vi6 .edgeLabel text{fill:#333}#mermaid-svg-Nj1Ku1xdLNyu2vi6 .stateLabel text{fill:#000;font-size:10px;font-weight:bold;font-family:'trebuchet ms', verdana, arial;font-family:var(--mermaid-font-family)}#mermaid-svg-Nj1Ku1xdLNyu2vi6 .node circle.state-start{fill:black;stroke:black}#mermaid-svg-Nj1Ku1xdLNyu2vi6 .node circle.state-end{fill:black;stroke:white;stroke-width:1.5}#mermaid-svg-Nj1Ku1xdLNyu2vi6 #statediagram-barbEnd{fill:#9370db}#mermaid-svg-Nj1Ku1xdLNyu2vi6 .statediagram-cluster rect{fill:#ECECFF;stroke:#9370db;stroke-width:1px}#mermaid-svg-Nj1Ku1xdLNyu2vi6 .statediagram-cluster rect.outer{rx:5px;ry:5px}#mermaid-svg-Nj1Ku1xdLNyu2vi6 .statediagram-state .divider{stroke:#9370db}#mermaid-svg-Nj1Ku1xdLNyu2vi6 .statediagram-state .title-state{rx:5px;ry:5px}#mermaid-svg-Nj1Ku1xdLNyu2vi6 .statediagram-cluster.statediagram-cluster .inner{fill:white}#mermaid-svg-Nj1Ku1xdLNyu2vi6 .statediagram-cluster.statediagram-cluster-alt .inner{fill:#e0e0e0}#mermaid-svg-Nj1Ku1xdLNyu2vi6 .statediagram-cluster .inner{rx:0;ry:0}#mermaid-svg-Nj1Ku1xdLNyu2vi6 .statediagram-state rect.basic{rx:5px;ry:5px}#mermaid-svg-Nj1Ku1xdLNyu2vi6 .statediagram-state rect.divider{stroke-dasharray:10,10;fill:#efefef}#mermaid-svg-Nj1Ku1xdLNyu2vi6 .note-edge{stroke-dasharray:5}#mermaid-svg-Nj1Ku1xdLNyu2vi6 .statediagram-note rect{fill:#fff5ad;stroke:#aa3;stroke-width:1px;rx:0;ry:0}:root{--mermaid-font-family: '"trebuchet ms", verdana, arial';--mermaid-font-family: "Comic Sans MS", "Comic Sans", cursive}#mermaid-svg-Nj1Ku1xdLNyu2vi6 .error-icon{fill:#522}#mermaid-svg-Nj1Ku1xdLNyu2vi6 .error-text{fill:#522;stroke:#522}#mermaid-svg-Nj1Ku1xdLNyu2vi6 .edge-thickness-normal{stroke-width:2px}#mermaid-svg-Nj1Ku1xdLNyu2vi6 .edge-thickness-thick{stroke-width:3.5px}#mermaid-svg-Nj1Ku1xdLNyu2vi6 .edge-pattern-solid{stroke-dasharray:0}#mermaid-svg-Nj1Ku1xdLNyu2vi6 .edge-pattern-dashed{stroke-dasharray:3}#mermaid-svg-Nj1Ku1xdLNyu2vi6 .edge-pattern-dotted{stroke-dasharray:2}#mermaid-svg-Nj1Ku1xdLNyu2vi6 .marker{fill:#333}#mermaid-svg-Nj1Ku1xdLNyu2vi6 .marker.cross{stroke:#333}:root { --mermaid-font-family: "trebuchet ms", verdana, arial;}#mermaid-svg-Nj1Ku1xdLNyu2vi6 {color: rgba(0, 0, 0, 0.75);font: ;}公司部门1n
  • 依赖(Dependency)

    • 是一种使用的关系,即一个类的实现需要另一个类的协助
    • 要尽量不使用双向的互相依赖
    • 代码体现:局部变量、方法的参数或者对静态方法的调用
    • 箭头指向:带箭头的虚线指向被使用者
    • mermaid语法:A ..> B
#mermaid-svg-PYJKqkc7su4BCqlw .label{font-family:'trebuchet ms', verdana, arial;font-family:var(--mermaid-font-family);fill:#333;color:#333}#mermaid-svg-PYJKqkc7su4BCqlw .label text{fill:#333}#mermaid-svg-PYJKqkc7su4BCqlw .node rect,#mermaid-svg-PYJKqkc7su4BCqlw .node circle,#mermaid-svg-PYJKqkc7su4BCqlw .node ellipse,#mermaid-svg-PYJKqkc7su4BCqlw .node polygon,#mermaid-svg-PYJKqkc7su4BCqlw .node path{fill:#ECECFF;stroke:#9370db;stroke-width:1px}#mermaid-svg-PYJKqkc7su4BCqlw .node .label{text-align:center;fill:#333}#mermaid-svg-PYJKqkc7su4BCqlw .node.clickable{cursor:pointer}#mermaid-svg-PYJKqkc7su4BCqlw .arrowheadPath{fill:#333}#mermaid-svg-PYJKqkc7su4BCqlw .edgePath .path{stroke:#333;stroke-width:1.5px}#mermaid-svg-PYJKqkc7su4BCqlw .flowchart-link{stroke:#333;fill:none}#mermaid-svg-PYJKqkc7su4BCqlw .edgeLabel{background-color:#e8e8e8;text-align:center}#mermaid-svg-PYJKqkc7su4BCqlw .edgeLabel rect{opacity:0.9}#mermaid-svg-PYJKqkc7su4BCqlw .edgeLabel span{color:#333}#mermaid-svg-PYJKqkc7su4BCqlw .cluster rect{fill:#ffffde;stroke:#aa3;stroke-width:1px}#mermaid-svg-PYJKqkc7su4BCqlw .cluster text{fill:#333}#mermaid-svg-PYJKqkc7su4BCqlw div.mermaidTooltip{position:absolute;text-align:center;max-width:200px;padding:2px;font-family:'trebuchet ms', verdana, arial;font-family:var(--mermaid-font-family);font-size:12px;background:#ffffde;border:1px solid #aa3;border-radius:2px;pointer-events:none;z-index:100}#mermaid-svg-PYJKqkc7su4BCqlw .actor{stroke:#ccf;fill:#ECECFF}#mermaid-svg-PYJKqkc7su4BCqlw text.actor>tspan{fill:#000;stroke:none}#mermaid-svg-PYJKqkc7su4BCqlw .actor-line{stroke:grey}#mermaid-svg-PYJKqkc7su4BCqlw .messageLine0{stroke-width:1.5;stroke-dasharray:none;stroke:#333}#mermaid-svg-PYJKqkc7su4BCqlw .messageLine1{stroke-width:1.5;stroke-dasharray:2, 2;stroke:#333}#mermaid-svg-PYJKqkc7su4BCqlw #arrowhead path{fill:#333;stroke:#333}#mermaid-svg-PYJKqkc7su4BCqlw .sequenceNumber{fill:#fff}#mermaid-svg-PYJKqkc7su4BCqlw #sequencenumber{fill:#333}#mermaid-svg-PYJKqkc7su4BCqlw #crosshead path{fill:#333;stroke:#333}#mermaid-svg-PYJKqkc7su4BCqlw .messageText{fill:#333;stroke:#333}#mermaid-svg-PYJKqkc7su4BCqlw .labelBox{stroke:#ccf;fill:#ECECFF}#mermaid-svg-PYJKqkc7su4BCqlw .labelText,#mermaid-svg-PYJKqkc7su4BCqlw .labelText>tspan{fill:#000;stroke:none}#mermaid-svg-PYJKqkc7su4BCqlw .loopText,#mermaid-svg-PYJKqkc7su4BCqlw .loopText>tspan{fill:#000;stroke:none}#mermaid-svg-PYJKqkc7su4BCqlw .loopLine{stroke-width:2px;stroke-dasharray:2, 2;stroke:#ccf;fill:#ccf}#mermaid-svg-PYJKqkc7su4BCqlw .note{stroke:#aa3;fill:#fff5ad}#mermaid-svg-PYJKqkc7su4BCqlw .noteText,#mermaid-svg-PYJKqkc7su4BCqlw .noteText>tspan{fill:#000;stroke:none}#mermaid-svg-PYJKqkc7su4BCqlw .activation0{fill:#f4f4f4;stroke:#666}#mermaid-svg-PYJKqkc7su4BCqlw .activation1{fill:#f4f4f4;stroke:#666}#mermaid-svg-PYJKqkc7su4BCqlw .activation2{fill:#f4f4f4;stroke:#666}#mermaid-svg-PYJKqkc7su4BCqlw .mermaid-main-font{font-family:"trebuchet ms", verdana, arial;font-family:var(--mermaid-font-family)}#mermaid-svg-PYJKqkc7su4BCqlw .section{stroke:none;opacity:0.2}#mermaid-svg-PYJKqkc7su4BCqlw .section0{fill:rgba(102,102,255,0.49)}#mermaid-svg-PYJKqkc7su4BCqlw .section2{fill:#fff400}#mermaid-svg-PYJKqkc7su4BCqlw .section1,#mermaid-svg-PYJKqkc7su4BCqlw .section3{fill:#fff;opacity:0.2}#mermaid-svg-PYJKqkc7su4BCqlw .sectionTitle0{fill:#333}#mermaid-svg-PYJKqkc7su4BCqlw .sectionTitle1{fill:#333}#mermaid-svg-PYJKqkc7su4BCqlw .sectionTitle2{fill:#333}#mermaid-svg-PYJKqkc7su4BCqlw .sectionTitle3{fill:#333}#mermaid-svg-PYJKqkc7su4BCqlw .sectionTitle{text-anchor:start;font-size:11px;text-height:14px;font-family:'trebuchet ms', verdana, arial;font-family:var(--mermaid-font-family)}#mermaid-svg-PYJKqkc7su4BCqlw .grid .tick{stroke:#d3d3d3;opacity:0.8;shape-rendering:crispEdges}#mermaid-svg-PYJKqkc7su4BCqlw .grid .tick text{font-family:'trebuchet ms', verdana, arial;font-family:var(--mermaid-font-family)}#mermaid-svg-PYJKqkc7su4BCqlw .grid path{stroke-width:0}#mermaid-svg-PYJKqkc7su4BCqlw .today{fill:none;stroke:red;stroke-width:2px}#mermaid-svg-PYJKqkc7su4BCqlw .task{stroke-width:2}#mermaid-svg-PYJKqkc7su4BCqlw .taskText{text-anchor:middle;font-family:'trebuchet ms', verdana, arial;font-family:var(--mermaid-font-family)}#mermaid-svg-PYJKqkc7su4BCqlw .taskText:not([font-size]){font-size:11px}#mermaid-svg-PYJKqkc7su4BCqlw .taskTextOutsideRight{fill:#000;text-anchor:start;font-size:11px;font-family:'trebuchet ms', verdana, arial;font-family:var(--mermaid-font-family)}#mermaid-svg-PYJKqkc7su4BCqlw .taskTextOutsideLeft{fill:#000;text-anchor:end;font-size:11px}#mermaid-svg-PYJKqkc7su4BCqlw .task.clickable{cursor:pointer}#mermaid-svg-PYJKqkc7su4BCqlw .taskText.clickable{cursor:pointer;fill:#003163 !important;font-weight:bold}#mermaid-svg-PYJKqkc7su4BCqlw .taskTextOutsideLeft.clickable{cursor:pointer;fill:#003163 !important;font-weight:bold}#mermaid-svg-PYJKqkc7su4BCqlw .taskTextOutsideRight.clickable{cursor:pointer;fill:#003163 !important;font-weight:bold}#mermaid-svg-PYJKqkc7su4BCqlw .taskText0,#mermaid-svg-PYJKqkc7su4BCqlw .taskText1,#mermaid-svg-PYJKqkc7su4BCqlw .taskText2,#mermaid-svg-PYJKqkc7su4BCqlw .taskText3{fill:#fff}#mermaid-svg-PYJKqkc7su4BCqlw .task0,#mermaid-svg-PYJKqkc7su4BCqlw .task1,#mermaid-svg-PYJKqkc7su4BCqlw .task2,#mermaid-svg-PYJKqkc7su4BCqlw .task3{fill:#8a90dd;stroke:#534fbc}#mermaid-svg-PYJKqkc7su4BCqlw .taskTextOutside0,#mermaid-svg-PYJKqkc7su4BCqlw .taskTextOutside2{fill:#000}#mermaid-svg-PYJKqkc7su4BCqlw .taskTextOutside1,#mermaid-svg-PYJKqkc7su4BCqlw .taskTextOutside3{fill:#000}#mermaid-svg-PYJKqkc7su4BCqlw .active0,#mermaid-svg-PYJKqkc7su4BCqlw .active1,#mermaid-svg-PYJKqkc7su4BCqlw .active2,#mermaid-svg-PYJKqkc7su4BCqlw .active3{fill:#bfc7ff;stroke:#534fbc}#mermaid-svg-PYJKqkc7su4BCqlw .activeText0,#mermaid-svg-PYJKqkc7su4BCqlw .activeText1,#mermaid-svg-PYJKqkc7su4BCqlw .activeText2,#mermaid-svg-PYJKqkc7su4BCqlw .activeText3{fill:#000 !important}#mermaid-svg-PYJKqkc7su4BCqlw .done0,#mermaid-svg-PYJKqkc7su4BCqlw .done1,#mermaid-svg-PYJKqkc7su4BCqlw .done2,#mermaid-svg-PYJKqkc7su4BCqlw .done3{stroke:grey;fill:#d3d3d3;stroke-width:2}#mermaid-svg-PYJKqkc7su4BCqlw .doneText0,#mermaid-svg-PYJKqkc7su4BCqlw .doneText1,#mermaid-svg-PYJKqkc7su4BCqlw .doneText2,#mermaid-svg-PYJKqkc7su4BCqlw .doneText3{fill:#000 !important}#mermaid-svg-PYJKqkc7su4BCqlw .crit0,#mermaid-svg-PYJKqkc7su4BCqlw .crit1,#mermaid-svg-PYJKqkc7su4BCqlw .crit2,#mermaid-svg-PYJKqkc7su4BCqlw .crit3{stroke:#f88;fill:red;stroke-width:2}#mermaid-svg-PYJKqkc7su4BCqlw .activeCrit0,#mermaid-svg-PYJKqkc7su4BCqlw .activeCrit1,#mermaid-svg-PYJKqkc7su4BCqlw .activeCrit2,#mermaid-svg-PYJKqkc7su4BCqlw .activeCrit3{stroke:#f88;fill:#bfc7ff;stroke-width:2}#mermaid-svg-PYJKqkc7su4BCqlw .doneCrit0,#mermaid-svg-PYJKqkc7su4BCqlw .doneCrit1,#mermaid-svg-PYJKqkc7su4BCqlw .doneCrit2,#mermaid-svg-PYJKqkc7su4BCqlw .doneCrit3{stroke:#f88;fill:#d3d3d3;stroke-width:2;cursor:pointer;shape-rendering:crispEdges}#mermaid-svg-PYJKqkc7su4BCqlw .milestone{transform:rotate(45deg) scale(0.8, 0.8)}#mermaid-svg-PYJKqkc7su4BCqlw .milestoneText{font-style:italic}#mermaid-svg-PYJKqkc7su4BCqlw .doneCritText0,#mermaid-svg-PYJKqkc7su4BCqlw .doneCritText1,#mermaid-svg-PYJKqkc7su4BCqlw .doneCritText2,#mermaid-svg-PYJKqkc7su4BCqlw .doneCritText3{fill:#000 !important}#mermaid-svg-PYJKqkc7su4BCqlw .activeCritText0,#mermaid-svg-PYJKqkc7su4BCqlw .activeCritText1,#mermaid-svg-PYJKqkc7su4BCqlw .activeCritText2,#mermaid-svg-PYJKqkc7su4BCqlw .activeCritText3{fill:#000 !important}#mermaid-svg-PYJKqkc7su4BCqlw .titleText{text-anchor:middle;font-size:18px;fill:#000;font-family:'trebuchet ms', verdana, arial;font-family:var(--mermaid-font-family)}#mermaid-svg-PYJKqkc7su4BCqlw g.classGroup text{fill:#9370db;stroke:none;font-family:'trebuchet ms', verdana, arial;font-family:var(--mermaid-font-family);font-size:10px}#mermaid-svg-PYJKqkc7su4BCqlw g.classGroup text .title{font-weight:bolder}#mermaid-svg-PYJKqkc7su4BCqlw g.clickable{cursor:pointer}#mermaid-svg-PYJKqkc7su4BCqlw g.classGroup rect{fill:#ECECFF;stroke:#9370db}#mermaid-svg-PYJKqkc7su4BCqlw g.classGroup line{stroke:#9370db;stroke-width:1}#mermaid-svg-PYJKqkc7su4BCqlw .classLabel .box{stroke:none;stroke-width:0;fill:#ECECFF;opacity:0.5}#mermaid-svg-PYJKqkc7su4BCqlw .classLabel .label{fill:#9370db;font-size:10px}#mermaid-svg-PYJKqkc7su4BCqlw .relation{stroke:#9370db;stroke-width:1;fill:none}#mermaid-svg-PYJKqkc7su4BCqlw .dashed-line{stroke-dasharray:3}#mermaid-svg-PYJKqkc7su4BCqlw #compositionStart{fill:#9370db;stroke:#9370db;stroke-width:1}#mermaid-svg-PYJKqkc7su4BCqlw #compositionEnd{fill:#9370db;stroke:#9370db;stroke-width:1}#mermaid-svg-PYJKqkc7su4BCqlw #aggregationStart{fill:#ECECFF;stroke:#9370db;stroke-width:1}#mermaid-svg-PYJKqkc7su4BCqlw #aggregationEnd{fill:#ECECFF;stroke:#9370db;stroke-width:1}#mermaid-svg-PYJKqkc7su4BCqlw #dependencyStart{fill:#9370db;stroke:#9370db;stroke-width:1}#mermaid-svg-PYJKqkc7su4BCqlw #dependencyEnd{fill:#9370db;stroke:#9370db;stroke-width:1}#mermaid-svg-PYJKqkc7su4BCqlw #extensionStart{fill:#9370db;stroke:#9370db;stroke-width:1}#mermaid-svg-PYJKqkc7su4BCqlw #extensionEnd{fill:#9370db;stroke:#9370db;stroke-width:1}#mermaid-svg-PYJKqkc7su4BCqlw .commit-id,#mermaid-svg-PYJKqkc7su4BCqlw .commit-msg,#mermaid-svg-PYJKqkc7su4BCqlw .branch-label{fill:lightgrey;color:lightgrey;font-family:'trebuchet ms', verdana, arial;font-family:var(--mermaid-font-family)}#mermaid-svg-PYJKqkc7su4BCqlw .pieTitleText{text-anchor:middle;font-size:25px;fill:#000;font-family:'trebuchet ms', verdana, arial;font-family:var(--mermaid-font-family)}#mermaid-svg-PYJKqkc7su4BCqlw .slice{font-family:'trebuchet ms', verdana, arial;font-family:var(--mermaid-font-family)}#mermaid-svg-PYJKqkc7su4BCqlw g.stateGroup text{fill:#9370db;stroke:none;font-size:10px;font-family:'trebuchet ms', verdana, arial;font-family:var(--mermaid-font-family)}#mermaid-svg-PYJKqkc7su4BCqlw g.stateGroup text{fill:#9370db;fill:#333;stroke:none;font-size:10px}#mermaid-svg-PYJKqkc7su4BCqlw g.statediagram-cluster .cluster-label text{fill:#333}#mermaid-svg-PYJKqkc7su4BCqlw g.stateGroup .state-title{font-weight:bolder;fill:#000}#mermaid-svg-PYJKqkc7su4BCqlw g.stateGroup rect{fill:#ECECFF;stroke:#9370db}#mermaid-svg-PYJKqkc7su4BCqlw g.stateGroup line{stroke:#9370db;stroke-width:1}#mermaid-svg-PYJKqkc7su4BCqlw .transition{stroke:#9370db;stroke-width:1;fill:none}#mermaid-svg-PYJKqkc7su4BCqlw .stateGroup .composit{fill:white;border-bottom:1px}#mermaid-svg-PYJKqkc7su4BCqlw .stateGroup .alt-composit{fill:#e0e0e0;border-bottom:1px}#mermaid-svg-PYJKqkc7su4BCqlw .state-note{stroke:#aa3;fill:#fff5ad}#mermaid-svg-PYJKqkc7su4BCqlw .state-note text{fill:black;stroke:none;font-size:10px}#mermaid-svg-PYJKqkc7su4BCqlw .stateLabel .box{stroke:none;stroke-width:0;fill:#ECECFF;opacity:0.7}#mermaid-svg-PYJKqkc7su4BCqlw .edgeLabel text{fill:#333}#mermaid-svg-PYJKqkc7su4BCqlw .stateLabel text{fill:#000;font-size:10px;font-weight:bold;font-family:'trebuchet ms', verdana, arial;font-family:var(--mermaid-font-family)}#mermaid-svg-PYJKqkc7su4BCqlw .node circle.state-start{fill:black;stroke:black}#mermaid-svg-PYJKqkc7su4BCqlw .node circle.state-end{fill:black;stroke:white;stroke-width:1.5}#mermaid-svg-PYJKqkc7su4BCqlw #statediagram-barbEnd{fill:#9370db}#mermaid-svg-PYJKqkc7su4BCqlw .statediagram-cluster rect{fill:#ECECFF;stroke:#9370db;stroke-width:1px}#mermaid-svg-PYJKqkc7su4BCqlw .statediagram-cluster rect.outer{rx:5px;ry:5px}#mermaid-svg-PYJKqkc7su4BCqlw .statediagram-state .divider{stroke:#9370db}#mermaid-svg-PYJKqkc7su4BCqlw .statediagram-state .title-state{rx:5px;ry:5px}#mermaid-svg-PYJKqkc7su4BCqlw .statediagram-cluster.statediagram-cluster .inner{fill:white}#mermaid-svg-PYJKqkc7su4BCqlw .statediagram-cluster.statediagram-cluster-alt .inner{fill:#e0e0e0}#mermaid-svg-PYJKqkc7su4BCqlw .statediagram-cluster .inner{rx:0;ry:0}#mermaid-svg-PYJKqkc7su4BCqlw .statediagram-state rect.basic{rx:5px;ry:5px}#mermaid-svg-PYJKqkc7su4BCqlw .statediagram-state rect.divider{stroke-dasharray:10,10;fill:#efefef}#mermaid-svg-PYJKqkc7su4BCqlw .note-edge{stroke-dasharray:5}#mermaid-svg-PYJKqkc7su4BCqlw .statediagram-note rect{fill:#fff5ad;stroke:#aa3;stroke-width:1px;rx:0;ry:0}:root{--mermaid-font-family: '"trebuchet ms", verdana, arial';--mermaid-font-family: "Comic Sans MS", "Comic Sans", cursive}#mermaid-svg-PYJKqkc7su4BCqlw .error-icon{fill:#522}#mermaid-svg-PYJKqkc7su4BCqlw .error-text{fill:#522;stroke:#522}#mermaid-svg-PYJKqkc7su4BCqlw .edge-thickness-normal{stroke-width:2px}#mermaid-svg-PYJKqkc7su4BCqlw .edge-thickness-thick{stroke-width:3.5px}#mermaid-svg-PYJKqkc7su4BCqlw .edge-pattern-solid{stroke-dasharray:0}#mermaid-svg-PYJKqkc7su4BCqlw .edge-pattern-dashed{stroke-dasharray:3}#mermaid-svg-PYJKqkc7su4BCqlw .edge-pattern-dotted{stroke-dasharray:2}#mermaid-svg-PYJKqkc7su4BCqlw .marker{fill:#333}#mermaid-svg-PYJKqkc7su4BCqlw .marker.cross{stroke:#333}:root { --mermaid-font-family: "trebuchet ms", verdana, arial;}#mermaid-svg-PYJKqkc7su4BCqlw {color: rgba(0, 0, 0, 0.75);font: ;}人类计算机UserServiceUserDao

2.各种关系的强弱顺序

泛化(类与继承关系) = 实现(类与接口关系) >
组合(整体与部分的关系) > 聚合(整体与部分的关系) > 关联(拥有的关系) >
依赖(使用的关系)


mermaid实现上述关系:

#mermaid-svg-tVCwC2FDZKdc50PP .label{font-family:'trebuchet ms', verdana, arial;font-family:var(--mermaid-font-family);fill:#333;color:#333}#mermaid-svg-tVCwC2FDZKdc50PP .label text{fill:#333}#mermaid-svg-tVCwC2FDZKdc50PP .node rect,#mermaid-svg-tVCwC2FDZKdc50PP .node circle,#mermaid-svg-tVCwC2FDZKdc50PP .node ellipse,#mermaid-svg-tVCwC2FDZKdc50PP .node polygon,#mermaid-svg-tVCwC2FDZKdc50PP .node path{fill:#ECECFF;stroke:#9370db;stroke-width:1px}#mermaid-svg-tVCwC2FDZKdc50PP .node .label{text-align:center;fill:#333}#mermaid-svg-tVCwC2FDZKdc50PP .node.clickable{cursor:pointer}#mermaid-svg-tVCwC2FDZKdc50PP .arrowheadPath{fill:#333}#mermaid-svg-tVCwC2FDZKdc50PP .edgePath .path{stroke:#333;stroke-width:1.5px}#mermaid-svg-tVCwC2FDZKdc50PP .flowchart-link{stroke:#333;fill:none}#mermaid-svg-tVCwC2FDZKdc50PP .edgeLabel{background-color:#e8e8e8;text-align:center}#mermaid-svg-tVCwC2FDZKdc50PP .edgeLabel rect{opacity:0.9}#mermaid-svg-tVCwC2FDZKdc50PP .edgeLabel span{color:#333}#mermaid-svg-tVCwC2FDZKdc50PP .cluster rect{fill:#ffffde;stroke:#aa3;stroke-width:1px}#mermaid-svg-tVCwC2FDZKdc50PP .cluster text{fill:#333}#mermaid-svg-tVCwC2FDZKdc50PP div.mermaidTooltip{position:absolute;text-align:center;max-width:200px;padding:2px;font-family:'trebuchet ms', verdana, arial;font-family:var(--mermaid-font-family);font-size:12px;background:#ffffde;border:1px solid #aa3;border-radius:2px;pointer-events:none;z-index:100}#mermaid-svg-tVCwC2FDZKdc50PP .actor{stroke:#ccf;fill:#ECECFF}#mermaid-svg-tVCwC2FDZKdc50PP text.actor>tspan{fill:#000;stroke:none}#mermaid-svg-tVCwC2FDZKdc50PP .actor-line{stroke:grey}#mermaid-svg-tVCwC2FDZKdc50PP .messageLine0{stroke-width:1.5;stroke-dasharray:none;stroke:#333}#mermaid-svg-tVCwC2FDZKdc50PP .messageLine1{stroke-width:1.5;stroke-dasharray:2, 2;stroke:#333}#mermaid-svg-tVCwC2FDZKdc50PP #arrowhead path{fill:#333;stroke:#333}#mermaid-svg-tVCwC2FDZKdc50PP .sequenceNumber{fill:#fff}#mermaid-svg-tVCwC2FDZKdc50PP #sequencenumber{fill:#333}#mermaid-svg-tVCwC2FDZKdc50PP #crosshead path{fill:#333;stroke:#333}#mermaid-svg-tVCwC2FDZKdc50PP .messageText{fill:#333;stroke:#333}#mermaid-svg-tVCwC2FDZKdc50PP .labelBox{stroke:#ccf;fill:#ECECFF}#mermaid-svg-tVCwC2FDZKdc50PP .labelText,#mermaid-svg-tVCwC2FDZKdc50PP .labelText>tspan{fill:#000;stroke:none}#mermaid-svg-tVCwC2FDZKdc50PP .loopText,#mermaid-svg-tVCwC2FDZKdc50PP .loopText>tspan{fill:#000;stroke:none}#mermaid-svg-tVCwC2FDZKdc50PP .loopLine{stroke-width:2px;stroke-dasharray:2, 2;stroke:#ccf;fill:#ccf}#mermaid-svg-tVCwC2FDZKdc50PP .note{stroke:#aa3;fill:#fff5ad}#mermaid-svg-tVCwC2FDZKdc50PP .noteText,#mermaid-svg-tVCwC2FDZKdc50PP .noteText>tspan{fill:#000;stroke:none}#mermaid-svg-tVCwC2FDZKdc50PP .activation0{fill:#f4f4f4;stroke:#666}#mermaid-svg-tVCwC2FDZKdc50PP .activation1{fill:#f4f4f4;stroke:#666}#mermaid-svg-tVCwC2FDZKdc50PP .activation2{fill:#f4f4f4;stroke:#666}#mermaid-svg-tVCwC2FDZKdc50PP .mermaid-main-font{font-family:"trebuchet ms", verdana, arial;font-family:var(--mermaid-font-family)}#mermaid-svg-tVCwC2FDZKdc50PP .section{stroke:none;opacity:0.2}#mermaid-svg-tVCwC2FDZKdc50PP .section0{fill:rgba(102,102,255,0.49)}#mermaid-svg-tVCwC2FDZKdc50PP .section2{fill:#fff400}#mermaid-svg-tVCwC2FDZKdc50PP .section1,#mermaid-svg-tVCwC2FDZKdc50PP .section3{fill:#fff;opacity:0.2}#mermaid-svg-tVCwC2FDZKdc50PP .sectionTitle0{fill:#333}#mermaid-svg-tVCwC2FDZKdc50PP .sectionTitle1{fill:#333}#mermaid-svg-tVCwC2FDZKdc50PP .sectionTitle2{fill:#333}#mermaid-svg-tVCwC2FDZKdc50PP .sectionTitle3{fill:#333}#mermaid-svg-tVCwC2FDZKdc50PP .sectionTitle{text-anchor:start;font-size:11px;text-height:14px;font-family:'trebuchet ms', verdana, arial;font-family:var(--mermaid-font-family)}#mermaid-svg-tVCwC2FDZKdc50PP .grid .tick{stroke:#d3d3d3;opacity:0.8;shape-rendering:crispEdges}#mermaid-svg-tVCwC2FDZKdc50PP .grid .tick text{font-family:'trebuchet ms', verdana, arial;font-family:var(--mermaid-font-family)}#mermaid-svg-tVCwC2FDZKdc50PP .grid path{stroke-width:0}#mermaid-svg-tVCwC2FDZKdc50PP .today{fill:none;stroke:red;stroke-width:2px}#mermaid-svg-tVCwC2FDZKdc50PP .task{stroke-width:2}#mermaid-svg-tVCwC2FDZKdc50PP .taskText{text-anchor:middle;font-family:'trebuchet ms', verdana, arial;font-family:var(--mermaid-font-family)}#mermaid-svg-tVCwC2FDZKdc50PP .taskText:not([font-size]){font-size:11px}#mermaid-svg-tVCwC2FDZKdc50PP .taskTextOutsideRight{fill:#000;text-anchor:start;font-size:11px;font-family:'trebuchet ms', verdana, arial;font-family:var(--mermaid-font-family)}#mermaid-svg-tVCwC2FDZKdc50PP .taskTextOutsideLeft{fill:#000;text-anchor:end;font-size:11px}#mermaid-svg-tVCwC2FDZKdc50PP .task.clickable{cursor:pointer}#mermaid-svg-tVCwC2FDZKdc50PP .taskText.clickable{cursor:pointer;fill:#003163 !important;font-weight:bold}#mermaid-svg-tVCwC2FDZKdc50PP .taskTextOutsideLeft.clickable{cursor:pointer;fill:#003163 !important;font-weight:bold}#mermaid-svg-tVCwC2FDZKdc50PP .taskTextOutsideRight.clickable{cursor:pointer;fill:#003163 !important;font-weight:bold}#mermaid-svg-tVCwC2FDZKdc50PP .taskText0,#mermaid-svg-tVCwC2FDZKdc50PP .taskText1,#mermaid-svg-tVCwC2FDZKdc50PP .taskText2,#mermaid-svg-tVCwC2FDZKdc50PP .taskText3{fill:#fff}#mermaid-svg-tVCwC2FDZKdc50PP .task0,#mermaid-svg-tVCwC2FDZKdc50PP .task1,#mermaid-svg-tVCwC2FDZKdc50PP .task2,#mermaid-svg-tVCwC2FDZKdc50PP .task3{fill:#8a90dd;stroke:#534fbc}#mermaid-svg-tVCwC2FDZKdc50PP .taskTextOutside0,#mermaid-svg-tVCwC2FDZKdc50PP .taskTextOutside2{fill:#000}#mermaid-svg-tVCwC2FDZKdc50PP .taskTextOutside1,#mermaid-svg-tVCwC2FDZKdc50PP .taskTextOutside3{fill:#000}#mermaid-svg-tVCwC2FDZKdc50PP .active0,#mermaid-svg-tVCwC2FDZKdc50PP .active1,#mermaid-svg-tVCwC2FDZKdc50PP .active2,#mermaid-svg-tVCwC2FDZKdc50PP .active3{fill:#bfc7ff;stroke:#534fbc}#mermaid-svg-tVCwC2FDZKdc50PP .activeText0,#mermaid-svg-tVCwC2FDZKdc50PP .activeText1,#mermaid-svg-tVCwC2FDZKdc50PP .activeText2,#mermaid-svg-tVCwC2FDZKdc50PP .activeText3{fill:#000 !important}#mermaid-svg-tVCwC2FDZKdc50PP .done0,#mermaid-svg-tVCwC2FDZKdc50PP .done1,#mermaid-svg-tVCwC2FDZKdc50PP .done2,#mermaid-svg-tVCwC2FDZKdc50PP .done3{stroke:grey;fill:#d3d3d3;stroke-width:2}#mermaid-svg-tVCwC2FDZKdc50PP .doneText0,#mermaid-svg-tVCwC2FDZKdc50PP .doneText1,#mermaid-svg-tVCwC2FDZKdc50PP .doneText2,#mermaid-svg-tVCwC2FDZKdc50PP .doneText3{fill:#000 !important}#mermaid-svg-tVCwC2FDZKdc50PP .crit0,#mermaid-svg-tVCwC2FDZKdc50PP .crit1,#mermaid-svg-tVCwC2FDZKdc50PP .crit2,#mermaid-svg-tVCwC2FDZKdc50PP .crit3{stroke:#f88;fill:red;stroke-width:2}#mermaid-svg-tVCwC2FDZKdc50PP .activeCrit0,#mermaid-svg-tVCwC2FDZKdc50PP .activeCrit1,#mermaid-svg-tVCwC2FDZKdc50PP .activeCrit2,#mermaid-svg-tVCwC2FDZKdc50PP .activeCrit3{stroke:#f88;fill:#bfc7ff;stroke-width:2}#mermaid-svg-tVCwC2FDZKdc50PP .doneCrit0,#mermaid-svg-tVCwC2FDZKdc50PP .doneCrit1,#mermaid-svg-tVCwC2FDZKdc50PP .doneCrit2,#mermaid-svg-tVCwC2FDZKdc50PP .doneCrit3{stroke:#f88;fill:#d3d3d3;stroke-width:2;cursor:pointer;shape-rendering:crispEdges}#mermaid-svg-tVCwC2FDZKdc50PP .milestone{transform:rotate(45deg) scale(0.8, 0.8)}#mermaid-svg-tVCwC2FDZKdc50PP .milestoneText{font-style:italic}#mermaid-svg-tVCwC2FDZKdc50PP .doneCritText0,#mermaid-svg-tVCwC2FDZKdc50PP .doneCritText1,#mermaid-svg-tVCwC2FDZKdc50PP .doneCritText2,#mermaid-svg-tVCwC2FDZKdc50PP .doneCritText3{fill:#000 !important}#mermaid-svg-tVCwC2FDZKdc50PP .activeCritText0,#mermaid-svg-tVCwC2FDZKdc50PP .activeCritText1,#mermaid-svg-tVCwC2FDZKdc50PP .activeCritText2,#mermaid-svg-tVCwC2FDZKdc50PP .activeCritText3{fill:#000 !important}#mermaid-svg-tVCwC2FDZKdc50PP .titleText{text-anchor:middle;font-size:18px;fill:#000;font-family:'trebuchet ms', verdana, arial;font-family:var(--mermaid-font-family)}#mermaid-svg-tVCwC2FDZKdc50PP g.classGroup text{fill:#9370db;stroke:none;font-family:'trebuchet ms', verdana, arial;font-family:var(--mermaid-font-family);font-size:10px}#mermaid-svg-tVCwC2FDZKdc50PP g.classGroup text .title{font-weight:bolder}#mermaid-svg-tVCwC2FDZKdc50PP g.clickable{cursor:pointer}#mermaid-svg-tVCwC2FDZKdc50PP g.classGroup rect{fill:#ECECFF;stroke:#9370db}#mermaid-svg-tVCwC2FDZKdc50PP g.classGroup line{stroke:#9370db;stroke-width:1}#mermaid-svg-tVCwC2FDZKdc50PP .classLabel .box{stroke:none;stroke-width:0;fill:#ECECFF;opacity:0.5}#mermaid-svg-tVCwC2FDZKdc50PP .classLabel .label{fill:#9370db;font-size:10px}#mermaid-svg-tVCwC2FDZKdc50PP .relation{stroke:#9370db;stroke-width:1;fill:none}#mermaid-svg-tVCwC2FDZKdc50PP .dashed-line{stroke-dasharray:3}#mermaid-svg-tVCwC2FDZKdc50PP #compositionStart{fill:#9370db;stroke:#9370db;stroke-width:1}#mermaid-svg-tVCwC2FDZKdc50PP #compositionEnd{fill:#9370db;stroke:#9370db;stroke-width:1}#mermaid-svg-tVCwC2FDZKdc50PP #aggregationStart{fill:#ECECFF;stroke:#9370db;stroke-width:1}#mermaid-svg-tVCwC2FDZKdc50PP #aggregationEnd{fill:#ECECFF;stroke:#9370db;stroke-width:1}#mermaid-svg-tVCwC2FDZKdc50PP #dependencyStart{fill:#9370db;stroke:#9370db;stroke-width:1}#mermaid-svg-tVCwC2FDZKdc50PP #dependencyEnd{fill:#9370db;stroke:#9370db;stroke-width:1}#mermaid-svg-tVCwC2FDZKdc50PP #extensionStart{fill:#9370db;stroke:#9370db;stroke-width:1}#mermaid-svg-tVCwC2FDZKdc50PP #extensionEnd{fill:#9370db;stroke:#9370db;stroke-width:1}#mermaid-svg-tVCwC2FDZKdc50PP .commit-id,#mermaid-svg-tVCwC2FDZKdc50PP .commit-msg,#mermaid-svg-tVCwC2FDZKdc50PP .branch-label{fill:lightgrey;color:lightgrey;font-family:'trebuchet ms', verdana, arial;font-family:var(--mermaid-font-family)}#mermaid-svg-tVCwC2FDZKdc50PP .pieTitleText{text-anchor:middle;font-size:25px;fill:#000;font-family:'trebuchet ms', verdana, arial;font-family:var(--mermaid-font-family)}#mermaid-svg-tVCwC2FDZKdc50PP .slice{font-family:'trebuchet ms', verdana, arial;font-family:var(--mermaid-font-family)}#mermaid-svg-tVCwC2FDZKdc50PP g.stateGroup text{fill:#9370db;stroke:none;font-size:10px;font-family:'trebuchet ms', verdana, arial;font-family:var(--mermaid-font-family)}#mermaid-svg-tVCwC2FDZKdc50PP g.stateGroup text{fill:#9370db;fill:#333;stroke:none;font-size:10px}#mermaid-svg-tVCwC2FDZKdc50PP g.statediagram-cluster .cluster-label text{fill:#333}#mermaid-svg-tVCwC2FDZKdc50PP g.stateGroup .state-title{font-weight:bolder;fill:#000}#mermaid-svg-tVCwC2FDZKdc50PP g.stateGroup rect{fill:#ECECFF;stroke:#9370db}#mermaid-svg-tVCwC2FDZKdc50PP g.stateGroup line{stroke:#9370db;stroke-width:1}#mermaid-svg-tVCwC2FDZKdc50PP .transition{stroke:#9370db;stroke-width:1;fill:none}#mermaid-svg-tVCwC2FDZKdc50PP .stateGroup .composit{fill:white;border-bottom:1px}#mermaid-svg-tVCwC2FDZKdc50PP .stateGroup .alt-composit{fill:#e0e0e0;border-bottom:1px}#mermaid-svg-tVCwC2FDZKdc50PP .state-note{stroke:#aa3;fill:#fff5ad}#mermaid-svg-tVCwC2FDZKdc50PP .state-note text{fill:black;stroke:none;font-size:10px}#mermaid-svg-tVCwC2FDZKdc50PP .stateLabel .box{stroke:none;stroke-width:0;fill:#ECECFF;opacity:0.7}#mermaid-svg-tVCwC2FDZKdc50PP .edgeLabel text{fill:#333}#mermaid-svg-tVCwC2FDZKdc50PP .stateLabel text{fill:#000;font-size:10px;font-weight:bold;font-family:'trebuchet ms', verdana, arial;font-family:var(--mermaid-font-family)}#mermaid-svg-tVCwC2FDZKdc50PP .node circle.state-start{fill:black;stroke:black}#mermaid-svg-tVCwC2FDZKdc50PP .node circle.state-end{fill:black;stroke:white;stroke-width:1.5}#mermaid-svg-tVCwC2FDZKdc50PP #statediagram-barbEnd{fill:#9370db}#mermaid-svg-tVCwC2FDZKdc50PP .statediagram-cluster rect{fill:#ECECFF;stroke:#9370db;stroke-width:1px}#mermaid-svg-tVCwC2FDZKdc50PP .statediagram-cluster rect.outer{rx:5px;ry:5px}#mermaid-svg-tVCwC2FDZKdc50PP .statediagram-state .divider{stroke:#9370db}#mermaid-svg-tVCwC2FDZKdc50PP .statediagram-state .title-state{rx:5px;ry:5px}#mermaid-svg-tVCwC2FDZKdc50PP .statediagram-cluster.statediagram-cluster .inner{fill:white}#mermaid-svg-tVCwC2FDZKdc50PP .statediagram-cluster.statediagram-cluster-alt .inner{fill:#e0e0e0}#mermaid-svg-tVCwC2FDZKdc50PP .statediagram-cluster .inner{rx:0;ry:0}#mermaid-svg-tVCwC2FDZKdc50PP .statediagram-state rect.basic{rx:5px;ry:5px}#mermaid-svg-tVCwC2FDZKdc50PP .statediagram-state rect.divider{stroke-dasharray:10,10;fill:#efefef}#mermaid-svg-tVCwC2FDZKdc50PP .note-edge{stroke-dasharray:5}#mermaid-svg-tVCwC2FDZKdc50PP .statediagram-note rect{fill:#fff5ad;stroke:#aa3;stroke-width:1px;rx:0;ry:0}:root{--mermaid-font-family: '"trebuchet ms", verdana, arial';--mermaid-font-family: "Comic Sans MS", "Comic Sans", cursive}#mermaid-svg-tVCwC2FDZKdc50PP .error-icon{fill:#522}#mermaid-svg-tVCwC2FDZKdc50PP .error-text{fill:#522;stroke:#522}#mermaid-svg-tVCwC2FDZKdc50PP .edge-thickness-normal{stroke-width:2px}#mermaid-svg-tVCwC2FDZKdc50PP .edge-thickness-thick{stroke-width:3.5px}#mermaid-svg-tVCwC2FDZKdc50PP .edge-pattern-solid{stroke-dasharray:0}#mermaid-svg-tVCwC2FDZKdc50PP .edge-pattern-dashed{stroke-dasharray:3}#mermaid-svg-tVCwC2FDZKdc50PP .edge-pattern-dotted{stroke-dasharray:2}#mermaid-svg-tVCwC2FDZKdc50PP .marker{fill:#333}#mermaid-svg-tVCwC2FDZKdc50PP .marker.cross{stroke:#333}:root { --mermaid-font-family: "trebuchet ms", verdana, arial;}#mermaid-svg-tVCwC2FDZKdc50PP {color: rgba(0, 0, 0, 0.75);font: ;}动物+声明+新陈代谢()+繁殖()鸟+羽毛+下蛋()鸭子+下蛋()大雁+下蛋()+飞()企鹅+下蛋()雁群唐老鸭气候翅膀氧气水飞翔讲话依赖依赖聚合1n关联组合12
%%下面是mermaid代码:classDiagram
class 动物{
+声明
+新陈代谢()
+繁殖()
}
class 鸟{
+羽毛
+下蛋()
}
class 鸭子{
+下蛋()
}
class 大雁{
+下蛋()
+飞()
}
class 企鹅{
+下蛋()
}
class 雁群
class 唐老鸭
class 气候
class 翅膀
class 氧气
class 水
class 飞翔
class 讲话动物 ..> 氧气 :依赖
动物 ..> 水 :依赖
鸟 --|> 动物
大雁 --|>鸟
鸭子 --|>鸟
企鹅 --|>鸟
唐老鸭 --|>鸭子
雁群 "1" o-- "n" 大雁 :聚合
企鹅 --> 气候 :关联
鸟 "1" *-- "2" 翅膀 :组合
唐老鸭 ..|>讲话
大雁 ..|> 飞翔

使用mermaid画类图相关推荐

  1. Mermaid classDiagram类图应用举例 汉,蜀汉,刘宋关系图

    Mermaid classDiagram类图应用举例 汉,蜀汉,刘宋关系图 西汉.东汉.蜀汉.刘宋 源代码如下,效果图在后 classDiagramclass 刘邦{ <<-201--19 ...

  2. 建立对象模型即使用UML画类图

    UML类图画法及其之间的几种关系 最近复习软件工程的考试,大题需要画一下类图,发现类图的画法及其之间的几种关系已经淡忘了很多, 上百度进行搜索,发现了一篇学习笔记,整理总结的不错哦 自我总结: 看见建 ...

  3. StarUML使用教程【画类图】

    1.打开StarUML 打开后,默认就是画类图的模式 默认创建了一个untitled项目 2.修改工程名字 ** 鼠标双击** [Untitled] 在这里进行填写相关信息 修改后,就变成了你修改的那 ...

  4. PowerDesigner 画类图

    PowerDesigner 画类图: 目录 1,建立class的Model 2,UML基础 类 接口: 关系 1, 泛化 generalization   用空心三角形+实线来表示 2, 实现 Rea ...

  5. StarUML画类图

    一. 前言 工作中,在写文档总结时,需要画类图,有助于理清楚类之间的调用关系和内部组成, Ubuntu下推荐使用StarUML 来画, 如果不知道这个工具,请参考笔者这篇文章下载安装: Ubuntu ...

  6. 使用Visio—UML画类图

    在一个VS工程中,由于类的个数较多,而参数描述不是特别清晰.若此工程的生命周期较长,则有必要对工程进行完整分析,给出完整的文档.需要画出类图,并对每个成员进行详细描述. 一.画出类图 在VIsio中, ...

  7. vscode remote 第三方库_还能这么玩?用VsCode画类图、流程图、时序图、...不要太爽

    软件设计中,有好几种图需要画,比如流程图.类图.组件图等,我知道大部分人画流程图一般都会用微软的viso绘制,我之前也是这个习惯.viso画图有个不好的地方是需要时刻去调整线条和边框已达到简洁美观,今 ...

  8. [转]PlantUML画类图、流程图、时序图使用详解

    程序员难免要经常画流程图,状态图,时序图等.以前经常用 visio 画,经常为矩形画多大,摆放在哪等问题费脑筋.有时候修改文字后,为了较好的显示效果不得不再去修改图形.今天介绍的工具是如何使用 Pla ...

  9. 用Enterprise Architect画类图和顺序图(一)

    新建一个Project 没什么好说的,"文件-新建项目",然后选择保存位置就好了,模式的话由于我喜欢一个包一张图所以一般都选择"新建包的时候同时新建图". 会弹 ...

最新文章

  1. AngularJS学习笔记二:AngularJS指令
  2. eclipse svn插件 不能正常显示属性的解决办法
  3. 传智播客JavaWeb day11--事务的概念、事务的ACID、数据库锁机制、
  4. windows下如何访问linux下的oracle数据库
  5. linux出站入站端口维护,linux下如何用iptables开放指定端口_网站服务器运行维护,linux,iptables,端口...
  6. 战神4 幕后花絮 概念艺术_Java 9幕后花絮:新功能从何而来?
  7. 【BZOJ - 2574】[Poi1999] Store-Keeper(点双连通分量,求割点,记忆化bfs)
  8. HOW TO:在 Visual C++ .NET 中从 System::String* 转换为 Char*
  9. python 字典和列表的遍历
  10. galileo 汉化
  11. vasp能装在window系统里吗_vasp 5.4.4 在win10/Ubuntu 18.04上的安装
  12. 数字电路实验怎么接线视频讲解_铆钉是怎么被铆接的,多种铆钉动画演示(内附视频讲解)...
  13. 博弈论——取石子问题
  14. 2019主流浏览器市场占有率及其内核
  15. 如何快速查看电脑的IP和MAC
  16. c语言学生信息结构体录入文件,C语言—学生信息管理系统
  17. 分享一些Python导图与速查表
  18. XDU-OJ-C语言-Test 2
  19. 服务器宝塔Error: connect ETIMEDOUT
  20. 搭建CTPN网络(基于windows与tensorflow)

热门文章

  1. android 字体花屏,Android bug——Launcher 0x506导致花屏问题
  2. Numpy 的矩阵除法linalg.solve(matA, matB)
  3. LeetCode 427. 建立四叉树 (递归dfs \ 矩阵)
  4. 超详细!“看图说话”(Image Caption)项目实战
  5. 用计算机怎样设置音乐视频教学,怎样在电脑上给视频加好听的背景音乐?这样操作很方便...
  6. 今天给二叉树加个BGM,二叉树唱歌了!
  7. vue中使用echarts做一个雷达图
  8. Android应用内用其他应用打开文档
  9. mysql数据库任务驱动式教程课后答案_正版二手 MySQL数据库任务驱动式教程 石坤泉 汤双霞 王鸿铭 人民邮电出版社 9787115362711...
  10. 什么是物理隔离?物理隔离光端机是什么?