Design to code(2)

【碎碎念】從七點到十一點,累計用時4個小時完成的代碼翻譯Σ( ̄。 ̄ノ)ノ


DCDS圖

順序圖(支付過程)

交互圖(訂單)

我的代碼

Payment

public class Payment {

????//定義支付訂單金額

????private Integer amount;

????//初始化一個新的支付實例

????public Payment(Integer amount) {

????????this.amount = amount;

}

????//創建支付

????public void create(Integer amount){

????????this.amount = amount;

????}

}

Payment類,用于封裝支付相關信息及處理支付過程。Payment類有私有變量amount和create(Integer amount)函數。

Merchant

public class Merchant {

????public void associateOrder() {

????????// 將訂單與特定的商戶關聯

????}

}

Merchant類,代表系統中的商戶實體,負責管理其下的訂單和支付相關操作。Merchant類有associateOrder()函數。

Order

public class Order {

????private Integer id;//訂單ID

????private LocalDateTime time;//下單時間

????private Integer amount;//訂單金額

????private Payment payment;// 來自類-關聯屬性可見性

Merchant merchant = new Merchant();

????// 構造函數,初始化訂單的基本信息

????public Order(Integer id, LocalDateTime time, Integer amount) {

????????this.id = id;

????????this.time = time;

????????this.amount = amount;

????}

????public void makePayment(Integer amount) {

????????// 實現支付邏輯

????????payment = new Payment(amount);

????????

????}

????public void createOrder() {

????????// 通過參數傳遞的Merchant對象間接關聯商戶與訂單

????????merchant.associateOrder();

????}

}

Order類,代表系統中的訂單實體,用于存儲訂單信息及處理訂單狀態變更、關聯支付等操作。Order類有私有變量?id、time、amount,Order類的函數有makePayment(Integer amount)和createOrder() ,來自上述的協作圖和DCD圖。

System

public class System {

????private Order order; // 來自類-關聯屬性可見性

????public void createOrder() {

??????//創建訂單

???????order.createOrder();

????}

????public void confirmOrder() {

????????// 確認訂單

????}

}

System類,代表系統管理實體,負責處理訂單的創建、確認等系統級操作。System類有createOrder()和confirmOrder() 函數。


保佑我順利通過老師的檢查,以及系統設計考試順利,加油ヾ(?°?°?)ノ゙

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/bicheng/14889.shtml
繁體地址,請注明出處:http://hk.pswp.cn/bicheng/14889.shtml
英文地址,請注明出處:http://en.pswp.cn/bicheng/14889.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

static的了解

【關鍵字】static 使用總結_c static關鍵字-CSDN博客 本文來自上面的文章,這里用于學習,謝謝大佬的分享!!! 非原創!!! 1.一個項目中創建main.cpp和demo.cpp (1&#…

FL Studio2025中文最新版本專業編曲軟件有哪些新功能?

FL Studio 21,也被音樂制作愛好者親切地稱為“水果編曲軟件”,是比利時的Image-Line公司研發的一款完整的音樂制作環境或數字音頻工作站(DAW)。自從1990年代推出以來,FL Studio 以其直觀的用戶界面、豐富的插件支持和強…

Rust分割字符串的常見操作方法

在Rust編程語言中,分割字符串是一個常見的操作,可以通過多種方式實現。以下是一些常用的方法: 使用split方法: split方法可以按照指定的字符或字符序列來分割字符串。它返回一個迭代器,可以迭代分割后的字符串片段。 l…

玩機社區 - 2024年最美社區源碼開源

玩機社區 - 2024年最美社區源碼開源 教程源碼文檔都內置到壓縮包了 https://pan.baidu.com/s/1xwcscTne-JMbmKEntiuAuA?pwd78oi

邏輯分析儀 - 采樣率/采樣深度

采樣深度(Sampling Depth) 采樣深度指的是邏輯分析儀在一次捕獲過程中可以記錄的最大樣本數量。簡單來說,采樣深度越大,邏輯分析儀可以記錄的數據量就越多。這對于分析長時間的信號變化或復雜的信號序列非常重要。 采樣率&#…

2024年5月23日 (周四) 葉子游戲新聞

《Unclogged》Steam頁面上線 馬桶主題恐怖逃脫解謎Brody制作并發行,一款奇葩創意馬桶主題恐怖逃脫解謎新游《Unclogged》Steam頁面上線,本作暫不支持中文。 Meta人工智能主管楊立昆 大語言模型不會達到人類智能水平IT之家今日(5月23日&#x…

QEMU啟動Linux內核

在QEMU環境下啟動linux內核命令如下: QEMU_AUDIO_DRVnone qemu-system-arm -m 256M -nographic -M versatilepb -kernel /home/yukeyang/myfile/linux-6.6.30/arch/arm/boot/zImage -append "consolettyAMA0 rdinit/bin/sh" -dtb arch/arm/boot/dts/arm/…

數據防泄漏系統哪個好用,給文件加密的軟件

數據防泄露(Data Leakage Prevention,DLP)是指通過一定的技術手段,防止組織指定(重要或敏感的)數據或信息資產以違反安全策略規定的形式流出組織的一種策略。 信息防泄露以文檔加密技術為核心,…

順序表及其應用

掌握順序表的初始化,初始化、查找、插入、刪除、遍歷、查看實際長度等操作 內容 從鍵盤輸入n個整數,創建順序表。【創建長度為n的順序表】從鍵盤輸入1個整數x,在順序表中查找x所在的位置。若找到,輸出該元素所在的位置(即數組下標…

SQL開窗函數

文章目錄 概念:語法:常用的窗口函數及示例:求平均值:AVG() :求和:SUM():求排名:移動平均計數COUNT():求最大MXA()/小MIN()值求分區內的最大/最小值求當前行的前/后一個值 概念: 開窗…

同旺科技 FLUKE ADPT 隔離版發布 ---- 說明書

所需設備: 1、FLUKE ADPT 隔離版 內附鏈接; 應用于:福祿克Fluke 12E / 15BMax / 17B Max / 101 / 106 / 107 應用于:福祿克Fluke 15B / 17B / 18B

利用文本圖像對比模型進行虛假信息檢測

Harnessing the Power of Text-image Contrastive Models for Automatic Detection of Online Misinformation 論文地址: CVPR 2023 Open Access Repositoryhttps://openaccess.thecvf.com/content/CVPR2023W/WMF/html/Chen_Harnessing_the_Power_of_Text-Image_Contrastive_…

51單片機學習(4)3-1 獨立按鍵控制LED亮滅

#include<REGX52.H> void main() { //P20xFE; P2_01; while(1) { if(P3_10) { P2_00&#xff1b; } else { P2_01&#xff1b; } } }

力扣周賽398題解

特殊數組Ⅰ 如果數組的每一對相鄰元素都是兩個奇偶性不同的數字&#xff0c;則該數組被認為是一個 特殊數組 。 Aging 有一個整數數組 nums。如果 nums 是一個 特殊數組 &#xff0c;返回 true&#xff0c;否則返回 false。 示例 1&#xff1a; 輸入&#xff1a;nums [1] …

SEO:屏蔽流氓蜘蛛抓取

解決屏蔽流氓蜘蛛抓取&#xff0c;如MJ12bot 、DotBot 、BLEXBot 、PetalBot 、DataForSeoBot 1、robots文件屏蔽 User-agent: MJ12bot Disallow: / User-agent:DotBot Disallow: / User-agent:BLEXBot Disallow: / User-agent:PetalBot Disallow: / User-agent:DataForSeoBot…

【C++】<知識點> 標準和文件的輸入輸出

目錄 一、輸入輸出操作 1. 相關的類 2. 標準流對象 3. istream類的成員函數 二、流操縱算子 1. 整數流的基數 2. 浮點數精度的流操縱算子 3. 域寬的流操縱算子 4. 其他的流操縱算子 5. 用戶自定義流操縱算子 三、文件讀寫 1. 文本文件的讀寫 2. 二進制文件的讀寫 3. 文件讀寫…

vue 點擊復制文本到剪貼板

一、首先在vue文件的template中定義復制按鈕 <div size"small" v-if"item.prop jadeCode" class"cell-container"><span>{{ scope.row.jadeCode }}</span> <button click"handleCopy(scope.row.jadeCode)" clas…

一周開發一個客服工單系統

開發一個客服工單系統在一周內完成&#xff0c;需要詳細的計劃和高效的執行。以下是一個詳細的開發計劃&#xff0c;涵蓋每天的主要任務和技術棧選擇&#xff1a; 演示效果&#xff1a;gofly.v1kf.com 技術棧選擇 前端&#xff1a;React.js 或 Vue.js后端&#xff1a;Go (Gin)數…

K8s是如何Watch的?

1. 概述 進入 K8s 的世界&#xff0c;會發現幾乎所有對象都被抽象為了資源(Resource)&#xff0c;包括 K8s Core Resources(Pod, Service, Namespace 等)、CRD、APIService 擴展的資源類型。同時 K8s 底層將這些資源統一抽象為了 RESTful 的存儲(Storage)&#xff0c;一方面服…

jellyfish安裝及使用(Bioinformatics工具-020)

01 背景 基因組survey以測序技術為基礎&#xff0c;基于小片段文庫的低深度測序&#xff0c;通過K-mer分析&#xff0c;快速獲得基因組大小、雜合度、重復序列比例等基本信息&#xff0c;為制定該物種的全基因組de novo測序策略提供有效依據。 jellyfish (水母) 是一個用于快…