私のアプリケーションには次のクラスがあります。
MyTextField、拡張しJTextFieldます。
MyTextFieldただし、次のクラス内のメソッドが必要です。
MyPasswordField、拡張しJPasswordFieldます。
Java では多重継承が許可されていないため、クラスの 85% をコピーして貼り付けることは避けたいと考えています。この「限界」をどう乗り越えるか?
私のアプリケーションには次のクラスがあります。
MyTextField、拡張しJTextFieldます。
MyTextFieldただし、次のクラス内のメソッドが必要です。
MyPasswordField、拡張しJPasswordFieldます。
Java では多重継承が許可されていないため、クラスの 85% をコピーして貼り付けることは避けたいと考えています。この「限界」をどう乗り越えるか?
共有機能を定義するヘルパー クラスを使用します。ヘルパー クラスのインスタンスを保持するために、MyTextFieldとのそれぞれでフィールドを宣言します。MyPasswordField共有機能の必要に応じてヘルパーへの呼び出しを中継します。これは一度コーディングするだけで済みます。
継承の代わりに構成を使用しないのはなぜですか。MyPasswordField クラスには myTextField へのインスタンス変数を含めることができます。その後、インスタンスとそのメソッドを使用してメソッドを使用できます。私が間違った道を進んでいて、何か違うことを期待している場合はお知らせください。