私は Java の初心者で、この言語についてもっと学びたいと思っています。練習が必要であることは承知しており、この質問を自分の能力を最大限に発揮して探求したいと考えていますが、質問をもっと理解する必要があります。私は自分のコードの一部を実行しましたが、クラスの他の人がそれを見てコードをコピーできるため、投稿できません。
ここに質問があります::
現金自動預け払い機のプログラムを設計しているとします。ATM は、処理のために銀行の中央コンピューターに送信されるトランザクションを生成します。
この課題では、「Account」と「Transaction」の 2 つのクラスを作成します。Account オブジェクトには、整数で表すことができる一意の口座番号と残高が必要です。最初は残高がゼロです。Transaction オブジェクトには、取引される金額と、取引に関連付けられた Account クラスへの参照が必要です。
呼び出される 2 つのクラスの例を次に示します。
/**
* This class contains a main method that calls methods in the classes you will write.
*
* @author (your name)
* @version (a version number or a date)
*/
public class RunTransactions
{
static void main()
{
// Create two new accounts with the given account numbers
Account fred = new Account(1234);
Account jim = new Account(6778);
// Provide accessor methods for account information.
int accountNumber = fred.getAccountNumber();
float balance = fred.getBalance();
// Transactions consist of an account reference and an amount
Transaction t1 = new Transaction(fred, 20);
Transaction t2 = new Transaction(jim, 10);
Transaction t3 = new Transaction(jim, -20);
// Transactions must contain a "process" method that is called to
// actually perform the transaction.
// A transaction should not be allowed if it results in a negative balance.
t1.process();
t2.process();
t3.process();
// Print out a report of the account balance.
// The format should be like this: Account 6778 has balance $20.0
fred.report();
jim.report();
}
}
このファイルをダウンロードします。RunTransactions クラスだけを持つ BlueJ プロジェクトが含まれています。独自の Account クラスと Transaction クラスを作成する必要があります。適切と思われる任意のフィールドとメソッドを作成できますが、上記とまったく同じように呼び出すことができるメソッドを提供する必要があります。
report メソッドは、口座番号と残高を示す簡単なメッセージを出力する必要があります。フォーマットは
Account <account number> has balance $<account balance>
たとえば、上記のサンプル コードからのレポートの出力は次のようになります。
Account 1234 has balance $20.0
Account 6778 has balance $10.0
main メソッドと static 修飾子については、後の講義で学習します。ここでは、RunTransactions クラスを右クリックすると、メニュー void main() に項目が表示されることだけを知っておく必要があります。これをクリックすると、メイン メソッドが実行され、コードが呼び出されます。
メイン メソッドを変更して、アカウントとトランザクションのさまざまな組み合わせでコードをテストすることができます。クラスとメソッドにはまったく同じ名前を使用する必要があり、戻り値の引数の型は同じでなければならないことに注意してください。
課題を提出すると、さまざまなメイン メソッドでコードをテストします。