This question already has answers here:
What is the difference between Thread.start() and Thread.run()?
(9个答案)
5年前关闭。
我是Java新手。我有两个看起来像的类:
public class hsClient implements Runnable {
public void run() {
while(true){
}
}
}
public class hsServer implements Runnable {
public void run() {
while(true){
}
}
}
如果我尝试将两个类都作为线程启动,则不会启动第二个线程。看起来他陷入了第一个。
这是我的主要课程:
public static void main(String[] args) throws IOException {
hsClient client = new hsClient();
Thread tClient = new Thread(client);
tClient.run();
System.out.println("Start Client");
hsServer server = new hsServer();
Thread tServer = new Thread(server);
tServer.run();
System.out.println("Start Server");
}
如果我运行我的代码,它只会在控制台上显示“启动客户端”,而不是“启动服务器”
java参考方案
将tClient.run()
替换为tClient.start()
,将tServer.run()
替换为tServer.start()
。
调用run
方法直接在当前线程中而不是在新线程中执行它。
This question already has answers here: Double value returns 0 [duplicate] (3个答案) 6年前关闭。 我正在尝试将华氏度转换为摄氏温度。现在当我使用此错误时:double fahrenheit=input.nextDouble(); double celsius= ( **5** /…
从long到int,如果long值足够小以适合int [重复] - javaThis question already has answers here: Safely casting long to int in Java (10个回答) 7年前关闭。 如果long值足够小以适合int,可以自动将long转换为int吗?long i=1; int j=i; //Error Type mismatch: cannot convert…
为什么在Java中将函数称为方法? [重复] - javaThis question already has answers here: What's the difference between a method and a function? (34个答案) 6年前关闭。 为什么函数在Java中被称为方法。我不是要问两者之间的区别。为什么Java社区选择将它们命名为方法。这个决定背后是否有任何具体的原…
除了在类上访问属性时,为什么类在Java中没有定义符号? [重复] - javaThis question already has answers here: Are Java classes objects? (4个答案) 在8个月前关闭。 考虑最简单的示例。我们有public class Foo {} 因此我们可以说Foo.class // ==> class Foo 因此,有理由认为Foo应该是java.lang.Class…
使用-source 8或更高版本来启用lambda表达式[重复] - javaThis question already has answers here: Specifying java version in maven - differences between properties and compiler plugin (3个答案) 去年关闭。 当我尝试运行Maven构建时遇到构建错误。我创建了一个包含lambda函数的简单J…