Swingを使用したアプリケーションとしてJavaでクライアントを実装しています。しかし今、私はそれからアプレットも構築したいと思います。両方を簡単に構築してドライに保つことができるようにするために、再設計/リファクタリングするための最良の方法は何ですか。
これは、次のようなコードの短い抽出です。main()
public class Client {
public static final ScheduledExecutorService SERVICE;
protected static String host;
protected static int port;
static {
SERVICE = Executors.newSingleThreadScheduledExecutor();
host =
port =
}
public static void main(String[] args) {
//initalize netty
//create user interface = JFrame in SwingUtilities.invokeLater
connect();
}
public static void connect () {
//connect using netty
}
したがって、このファイルを別のファイルとしてコピーし、から拡張してJApplet
に変更main
するとinit
、実行できるようになりますが、コードの多くはコピーして貼り付けられるだけなので、もちろん見苦しいです。
それを再設計するための普遍的な解決策はありますか?
UPD:
public class Client {
public static void main (String[] args) {
App app = new App();
app.connect();
}
}
public class Applet extends JApplet {
public void init () {
App app = new App();
app.connect();
}
}
すべての初期化ロジックをに移動しますApp