1

私はこの特定の質問について助けを求めてたくさん見回しました。おそらく私の言葉遣いが間違っているかもしれません。その場合、リンクは完璧です!

問題は次のとおりです。

私は以下とのインターフェースを持っています:

Product get(String prodCode);

また、次のインターフェイスを実装する抽象クラスもあります。

public Product get(String prodCode) { //Do nothing }

ただし、コンパイラを満足させるには、何か (null または Product) を返す必要があります。私の理解では、「何もしない」ことはなくなるため、これらのいずれも返すべきではありません。何もせずにコンパイラを満足させる方法がわかりません。

4

2 に答える 2

0

あなたの DoNothingProduct 実装がどのようになるかはわかりませんが、デフォルト フィールドが設定された不変オブジェクトを返す Product の引数なしのデフォルト コンストラクタを使用できます。

于 2012-10-31T19:31:33.657 に答える
0

あなたのコメントからの情報に基づいて、次のいずれかを実行できると思います。

  1. 戻るnull
  2. Product機能を持たないデフォルト オブジェクトを返します。

返すのが最も簡単ですが、返された結果を操作しようとした結果発生する可能性のあるnullから呼び出し元のコードが保護されるようにする必要があります。NullPointerException

2 番目の場合は、static finalおそらくオブジェクトが返されるのが理想的です。

于 2012-10-31T19:40:38.367 に答える