static Customer GetCustomer(int id)
このメソッドの戻り値の型は、Customer
クラスを返さなければならないという意味ではありません。
これは、Customer クラスのオブジェクトまたは Customer のサブクラスへの参照を返す必要があることを意味します。
したがって、return ステートメントは次のようになります。
return new Customer(id);
そして、メソッドに基づいて、それはすでに存在するCustomer
オブジェクトを返す必要があるようですid
。たとえば、 がある場合、そのリストから、指定されたを持つオブジェクトをList<Customer>
見つける必要があります。Customer
id
ここで、メイン メソッドで 2 つのCustomers
-forrest
とを作成したとしrandom
ます。これらの参照は、データベースまたはデータベースのいずれかの永続ストレージに保存する必要がありList<Customer>
ます。また、いくつかに基づいてオブジェクトを指す参照id
を取得するには、使用中の永続ストレージから参照を取得する必要があります。
あなたの場合、 に基づいてオブジェクトをフェッチしたいので、id
を維持して、特定の でMap<Integer, Customer>
保存できます。Customers
id
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
ます。