Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/388.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/multithreading/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 线程未运行,为什么jframe setresizeable无法工作_Java_Multithreading_Swing_Jframe - Fatal编程技术网

Java 线程未运行,为什么jframe setresizeable无法工作

Java 线程未运行,为什么jframe setresizeable无法工作,java,multithreading,swing,jframe,Java,Multithreading,Swing,Jframe,为什么这个程序不起作用?(它不打印“正在运行…”) 我正在努力学习线程,这是我所学过的最难的事情之一。因为这个原因,OOP对这个xD来说什么都不是 new Thread("display"); 换成 new Thread(this) 我只是希望您知道自己在做什么。您已经创建了一个通用(读空)线程对象。您需要将类作为参数传入 thread = new Thread(this); 这将把run方法绑定到Thread对象。线程的名称通常不那么重要。请参阅您以错误的方式执行此操作, 调用clien

为什么这个程序不起作用?(它不打印“正在运行…”)

我正在努力学习线程,这是我所学过的最难的事情之一。因为这个原因,OOP对这个xD来说什么都不是

new Thread("display");
换成

new Thread(this)

我只是希望您知道自己在做什么。

您已经创建了一个通用(读空)线程对象。您需要将类作为参数传入

thread = new Thread(this);
这将把run方法绑定到Thread对象。线程的名称通常不那么重要。请参阅

您以错误的方式执行此操作, 调用
client.start()时
它将在
客户机
类中调用start函数,并在该函数中创建一个线程类的新实例,该实例的默认
运行
方法为空

您可能是指以下代码:

public synchronized void start() {
    running = true;
    thread = new Thread(this);
    thread.start(); // start the thread
}

我希望这对你有帮助

谢谢,现在我明白了!只是忘了加上它。(注:我把它改成了新的线程(这个“显示”),它也可以工作。
public synchronized void start() {
    running = true;
    thread = new Thread(this);
    thread.start(); // start the thread
}