gpt4 book ai didi

java - 避免使用最终的字符串变量

转载 作者:行者123 更新时间:2023-11-29 08:09:43 24 4
gpt4 key购买 nike

我已经为我的一个应用程序创建了这个 GUI。在覆盖方法 actionPerformed 中,我必须为字符串 command 插入 final 因为这变量在内部类中使用。有办法避免这个问题吗?

@Override
public void actionPerformed(ActionEvent e)
{
final String command = e.getActionCommand();

if(command.equals("add"))
{
new Thread(new Runnable(){

@Override
public void run()
{
// ... code skipped ... //
ous.writeObject(command);
// ... code skipped ... //
}
}).start();
}

else if(command.equals("remove"))
{
new Thread(new Runnable(){

@Override
public void run()
{
// ... code skipped ... //
ous.writeObject(command);
// ... code skipped ... //
}
}).start();
}
}

我试图解决声明的问题

String command = null;

在代码的开头。

最佳答案

您可以创建一个单独的类来实现 Runnable,在构造函数中传递 String 并使用该对象创建线程。喜欢:

class ThreadTask implements Runnable {
private String command;

public ThreadTask(String command) {
this.command = command;
}

public void run {
//
}
}

在我看来,它还使代码更具可读性。

关于java - 避免使用最终的字符串变量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8864095/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com