UML(Unified Modeling Language) 統一建模語言,又稱標準建模語言。是用來對軟件密集系統進行可視化建模的一種語言。UML的定義包括UML語義和UML表示法兩個元素。UML是在開發階段,說明、可視化、構建和書寫一個面向對象軟件密集系統的製品的開放方法。最佳的應用是工程實踐,對大規模,複雜系統進行建模方面,特別是在軟件架構層次,已經被驗證有效。統一建模語言(UML)是一種模型化語言。模型大多以圖表的方式表現出來。一份典型的建模圖表一般包含幾個塊或框,鏈接線和做爲模型附加信息之用的文本。這些雖簡單卻很是重要,在UML規則中相互聯繫和擴展。
以上內容來自百度百科。java
推薦一個繪圖和學習的在線工具ProcessOn微信
UML類圖,屬於UML圖中的一種,是在面嚮對象語言用中用來表示一個類的圖形,基本的UML類圖以下所示:
架構
如上圖,就表示一個類,三個格子從上至下分別表示:ide
它們前邊的符號有如下幾類:「+」表示public,「-」表示private,「#」表示protected工具
即最上邊的UML類圖表示代碼以下:學習
public class Student { private String name; private String sex; private int age; public void study() { System.out.println("study"); } protected void sleep() { System.out.println("sleep"); } public void eat() { System.out.println("eat"); } //get 和set方法和這個類的屬性無關 }
public class SeniorSchool extends Student { public void graduate() { System.out.println("畢業"); } public void cllegeEntranceExam() { System.out.println("高考"); } }
public interface Play { void play(); }
public class SeniorSchool extends Student implements Play { public void graduate() { System.out.println("畢業"); } public void cllegeEntranceExam() { System.out.println("高考"); } //實現接口方法 @Override public void play() { System.out.println("高三學生玩"); } }
/** * Student的一個構造方法 * 依賴於Air 和 Water * * @param air * @param water */ public Student(Air air, Water water) { }
所謂關聯關係,其實就是這個類有一個屬性是其餘類,以下圖和代碼。this
public class Dormitory { private String num; }
public class PrimaryStudent extends Student { private Dormitory dormitory; }
public class School { private Student[] students; }
public class Student { private Book book; public Student(Book book) { this.book = book; } }
歡迎關注個人微信公衆號「小魚與Java」,
code
最後再貼上整個圖:orm