static Customer GetCustomer(int id)
このメソッドの戻り値の型は、Customerクラスを返さなければならないという意味ではありません。
これは、Customer クラスのオブジェクトまたは Customer のサブクラスへの参照を返す必要があることを意味します。
したがって、return ステートメントは次のようになります。
return new Customer(id);
そして、メソッドに基づいて、それはすでに存在するCustomerオブジェクトを返す必要があるようですid。たとえば、 がある場合、そのリストから、指定されたを持つオブジェクトをList<Customer>見つける必要があります。Customerid
ここで、メイン メソッドで 2 つのCustomers-forrestとを作成したとしrandomます。これらの参照は、データベースまたはデータベースのいずれかの永続ストレージに保存する必要がありList<Customer>ます。また、いくつかに基づいてオブジェクトを指す参照idを取得するには、使用中の永続ストレージから参照を取得する必要があります。
あなたの場合、 に基づいてオブジェクトをフェッチしたいので、idを維持して、特定の でMap<Integer, Customer>保存できます。Customersid
static Map<Integer, Customer> map = new HashMap<Integer, Customer>();
public static void main(String[] args) {
Customer forrest = new Customer("Forrest Stallings", 1, "42 New Street, New York, NY");
Customer random = new Customer("Random Name", 2, "44 New Street, New York, NY");
map.put(1, forrest);
map.put(2, random);
}
そして、あなたのgetCustomerメソッドでcustomer、id渡されたパラメーターの を取得するだけです:-
public Customer getCustomer(int id) {
return map.get(id);
}
idしたがって、任意の値に対してテストを行う必要はありません。それに対応するものを自動的に取得Customerしidます。
例: -
getCustomer(1);
参照によって指されたオブジェクトを返しforrestます。