ホームページ >Java >これら 2 つの方法を 1 つに組み合わせるにはどうすればよいですか?

これら 2 つの方法を 1 つに組み合わせるにはどうすればよいですか?

WBOY
WBOY転載
2024-02-22 13:28:061108ブラウズ

php エディタ Apple が Java であなたの質問に答えます: 2 つのメソッドを 1 つに結合するにはどうすればよいですか? Java プログラミングでは、コードの読みやすさと実行効率を向上させるために、2 つのメソッドをより効率的なメソッドにマージする必要がある場合があります。メソッドをマージすることで重複コードが減り、プログラム構造が簡素化され、コードの再利用性が向上します。次に、メソッドのマージを迅速に実装し、Java プログラムの設計を最適化するための具体的な操作手順と注意事項を紹介します。

質問内容

よく似た方法が2つあります。したがって、それをメソッドにまとめたいのですが、方法がわかりません。

次のように使用します:

リーリー

次のように変更したい:

リーリー

方法 1b => a

リーリー

方法 2c => a

リーリー

同様のことをしたい:

リーリー

ジェネリックを使ってみた

リーリー ###しかしこれは:###

    これが機能しないため、コンパレータを実行できません
  • リーリー

  • ここでは、obj.getdate() を呼び出す代わりに、リフレクションを使用した解決策を見つけましたが、人々はそれを避けるようアドバイスしています。しかし、それはうまくいきます。私は何をしますか?
  • リーリー

  • classbとclasscのメソッド名が違うのでaobj.setclassxxx()の呼び出し方がわかりません
  • ラムダについて読んだことがありますが、その使用方法を理解するのが難しいです。

回避策

これらのクラスに共通のインターフェイスを追加できない場合は、メソッド パラメータにいくつかの関数を追加できます。 リーリー

呼び出しは次のとおりです:

mapclassbtoclassa("a list o classb objs", "a list of classa objs");
mapclassctoclassa("a list o classc objs", "a list of classa objs");

それがインターフェースの目的ですよね?

リーリー

セッターの場合は、

instanceof

を使用できます。

リーリー

以上がこれら 2 つの方法を 1 つに組み合わせるにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事はstackoverflow.comで複製されています。侵害がある場合は、admin@php.cn までご連絡ください。