我一直在用 Java 实现一个客户端作为使用 Swing 的应用程序。但现在我也想从中构建 Applet。什么是重新设计/重构以便能够轻松构建它们并保持干燥的最佳方法。
这是一个简短的代码提取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
,这样它就可以运行了,但它当然很难看,因为大部分代码只是复制粘贴的。
有没有通用的解决方案如何重新设计它?
升级版:
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