JDialog と JFrameの 2 つのクラスがあります (以下を参照)。ここで、いくつかの追加機能を取得したいと考えていますが、コードを 2 回記述することなく、2 つのクラスの両方でコードを拡張できるようにしたいと考えています。それを行う方法はありますか?
java.awt.Window » java.awt.Dialog » javax.swing.JDialog
java.awt.Window » java.awt.Frame » javax.swing.JFrame
(PS: 実際には、 のソース コードを「書き直して」、java.awt.Window
追加の機能を追加したいと考えています。それが不可能であることはわかっていますが、それは「解決策」になります。そうすると、JDialog と JFrame の両方が新しいメソッド。)
例:
メソッド を追加してmoveWindowToMagicPositionOnScreen()
、ウィンドウを画面上の使いやすい位置に移動するとします。これは単なる例です。JDialog
メソッドを と の両方に適用したいJFrame
。継承を使用して、たとえばMagicJDialog
と などの 2 つのクラスを記述し、それぞれがまったく同じMagicJFrame
方法でメソッドを実装する必要があります。moveWindowToMagicPositionOnScreen()
まあ、それはかなり冗長です。そのため、コードを 2 回記述したくありません。何らかの方法で、あるクラスが他のクラスのコードを使用することを望みます。