2020.09.29 軟體需求工程學習筆記
類與類之間的關係
1.Generalization 泛化(extends 繼承)
①語義:一個類(稱為子類、子介面)繼承另外一個類(稱為父類、父介面)的功能,並可以增加它自己的新功能。
②Java語法:
class Person {
}
class Student extends Person {
}
③UML圖:
2.Realization 實現
①語義:一個類可以實現多個介面,實現所有介面的功能;體現了規範和實現分離的原則。
②Java語法:
interface A{
public void a();
}
class B implement A{
public void a(){
System.out.println(“實現介面A”);
}
}
③UML圖:
3.Dependency 依賴
①語義:一個類A使用到了另一個類B,但是這種使用關係是具有偶然性的、臨時性的、非常弱的,但是類B的變化會影響到類A。
②Java語法:
class Car{
public void run(Petrol petrol){}
}
class Petrol{}
public class dep{
public static void main(){
Car car = new Car();
car.run(new Petrol);
}
}
③UML圖:
4.Association 關聯
①語義:關聯是兩個獨立的類之間,通過它們的物件建立的關係。
②Java語法:
class Bank{
private String name;
Bank(String name){
this.name = name;
}
public String getBankName(){
return this.name;
}
}
class Employee{
private String name;
Employee(String name){
this.name = name;
}
public String getEmployeeName(){
return this.name;
}
}
class Association{
public static void main(String[] args){
Bank bank = new Bank(“CBB”);
Employee emp = new Employee(“李華”);
System.out.println(emp.getEmployeeName()+”is employee of”+bank.getBankName());
}
}
③UML圖
5.Aggregation 聚合
①語義:是整體與部分的關係,且部分可以離開整體而單獨存在。
②Java語法:
class Car{
public static void run(){
System.out.println(“汽車在奔跑”);
}
}
class Driver{
Car mycar;
public void drive(){
mycar.run();
}
}
③UML圖:
6.Composition 組合
①語義:是整體與部分的關係,但部分不能離開整體而單獨存在。
②Java語法:
class Department{
}
class Company(Department dep){
mydep = dep;
}
③UML圖:
相關文章
- 軟體工程學習軟體工程
- 【軟體測試】學習筆記筆記
- 高階軟體工程筆記軟體工程筆記
- Django學習筆記(15)——中介軟體Django筆記
- Linux 學習筆記 - 軟體安裝Linux筆記
- 學習高校課程-軟體工程-軟體工程(ch2)軟體工程
- 訊息中介軟體-kafka學習筆記一Kafka筆記
- elasticsearch學習筆記二:相關軟體安裝Elasticsearch筆記
- 2024.10.17日軟體工程學習日誌軟體工程
- 2024.10.8日軟體工程學習日誌軟體工程
- 2024.10.9日軟體工程學習日誌軟體工程
- 2024.10.1日軟體工程學習日誌軟體工程
- 2024.9.30日軟體工程學習日誌軟體工程
- 2024.11.18 日軟體工程學習日誌軟體工程
- 2024.11.13 日軟體工程學習日誌軟體工程
- 2024.11.12 日軟體工程學習日誌軟體工程
- 2024.11.14 日軟體工程學習日誌軟體工程
- 2024.11.15 日軟體工程學習日誌軟體工程
- 2024.10.22日軟體工程學習日誌軟體工程
- 2024.10.18日軟體工程學習日誌軟體工程
- 2024.10.21日軟體工程學習日誌軟體工程
- 2024.10.25 日軟體工程學習日誌軟體工程
- 2024.10.29 日軟體工程學習日誌軟體工程
- 2024.10.30日軟體工程學習日誌軟體工程
- 2024.11.1 日軟體工程學習日誌軟體工程
- 2024.10.31 日軟體工程學習日誌軟體工程
- 2024.11.4 日軟體工程學習日誌軟體工程
- 2024.11.6 日軟體工程學習日誌軟體工程
- 2024.11.5 日軟體工程學習日誌軟體工程
- 2024.11.7 日軟體工程學習日誌軟體工程
- 你們學習 Laravel,記筆記都是用什麼軟體呢?Laravel筆記
- 第一個完整的spring查詢功能學習筆記【Spring工程學習筆記(二)】Spring筆記
- VisionPro學習筆記(1)——軟體介紹和基本使用筆記
- 軟體工程基礎——實驗2:需求分析軟體工程
- 軟體工程博士講師:軟體工程是一個學習過程,程式碼只是學習的副產品軟體工程
- GO 學習筆記->結構體Go筆記結構體
- HexMap學習筆記(八)——水體筆記
- 軟體工程練習題軟體工程