問題
銀行取引をシミュレートするプログラムを作成してください。残高が不足している場合に InsufficientFundsException をスローし、トランザクションをロールバックするようにします。
ヒント
銀行取引をシミュレートするプログラムを作成する場合、次の手順や要点に注意すると良いでしょう。
- 銀行アカウントクラスの作成: 銀行アカウントを表すクラスを作成します。このクラスには残高やアカウント番号などの属性が含まれます。
- InsufficientFundsException クラスの作成: 残高が不足している場合にスローされる例外クラスを作成します。このクラスは通常、Exception クラスを継承しています。
- 取引を行うメソッドの実装: 預金、引き出し、振り込みなど、銀行取引に関するメソッドを実装します。これらのメソッド内で残高が不足している場合に InsufficientFundsException をスローし、トランザクションをロールバックするようにします。
- トランザクション処理の実装: 取引が行われる場合、トランザクション処理を実装します。これにはデータベースなどの永続性を持つデータ構造を使用するか、一時的な変更を行い、成功した場合に確定(commit)し、失敗した場合に取り消す(rollback)処理を含みます。
- メインプログラムの作成: 銀行アカウントのインスタンスを生成し、異なる取引を実行してプログラムが正しく動作するか確認します。
これらの手順を基に、トランザクションのセキュアな処理と例外の利用が適切に組み合わさった銀行取引のシミュレートプログラムを作成できます。
→解答例