![](/img/trans.png)
[英]How to Ensure Memory Visibility in Java when passing data across threads
[英]How to ensure data persistence across classes and methods in Java?
我是Java和面向對象編程的新手,因此是這個基本問題。
舉例來說,我正在開發銀行應用程序。 對象之一是具有某些字段的客戶,例如帳戶余額等。
假設有一些提供某些特定功能的類。 例如,可能存在一個折扣類,該類基於某些條件來計算折扣/現金退款等。 因此,此類修改客戶對象的帳戶余額字段。 同樣,可能會有一個懲罰類,對不維持最低余額規定了懲罰。 因此,此類還修改了客戶對象的帳戶余額字段。 可能有許多此類可以修改客戶對象。
我懷疑這是如何用Java實現的? 我的想法是(並且我確定這是錯誤的)在折扣類中創建一個客戶對象並訪問該客戶對象的帳戶余額字段,如下所示:
//This is in the Discounts class
Customer obj = new Customer("John");
obj.accountbalance+ = discount;
類似地,從懲罰類訪問帳戶余額字段,我做如下操作:
//This is in the Penalty class
Customer obj = new Customer("John");
obj.accountbalance- = penalty;`
我的問題是關於數據持久性。 帳戶余額等字段如何在所有類和方法之間保持最新狀態? 數據如何持久保存?
我每次想訪問Customer對象中的字段時,都可以在每個類中創建Customer對象嗎? 如果沒有,在這種情況下的標准程序是什么。
對於這個基本問題,我們再次道歉,但這將使我和許多Java初學者受益,他們以后可能會看到此問題。
您正在以錯誤的方式進行操作。 每個Customer
應該有一個對象,而這些Customer
應該有一個名為accountBalance
的字段。 稱為accountBalance
discount()
和penalty()
(或類似名稱)的方法應修改accountBalance
。 為了保留數據(用於持久性),您可以將其寫入文件或其他內容,並在每次啟動時讀取它。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.