下面是“Java使用Thread创建多线程并启动操作示例”的完整攻略:
1. 基本概念
在介绍如何使用Thread创建多线程并启动之前,我们首先来了解一些基本概念。
Java中的线程是程序执行中的一条执行路径,可以同时执行多个线程实现多个任务的效果。Java中的多线程机制可以通过继承Thread类或实现Runnable接口来实现。
Java中的Thread类和Runnable接口都是描述线程的概念,不同的是Thread类是直接继承自Object类的一个子类,而Runnable接口是一个可以实现的接口。
2. 使用Thread创建多线程
使用Thread来创建多线程,可以继承Thread类并覆盖run()方法,来实现我们自己的线程任务。
下面是一个使用Thread创建多线程的示例:
public class MyThread extends Thread {
public void run() {
System.out.println("Thread is running");
}
public static void main(String[] args) {
MyThread myThread = new MyThread();
myThread.start();
}
}
上面的示例中,我们新建了一个MyThread类并继承了Thread类,并覆盖了run()方法。在main()方法中,我们创建了MyThread类的实例myThread,并调用start()方法来启动线程。
3. 使用Runnable创建多线程
使用Runnable接口来创建多线程,可以实现我们自己的线程任务,同时避免了继承Thread类带来的一些缺陷,如不能再继承其他类等。
下面是一个使用Runnable创建多线程的示例:
public class MyRunnable implements Runnable {
public void run() {
System.out.println("Thread is running");
}
public static void main(String[] args) {
Thread thread = new Thread(new MyRunnable());
thread.start();
}
}
上面的示例中,我们新建了一个MyRunnable类并实现了Runnable接口,并覆盖了run()方法。在main()方法中,我们创建了Thread类的实例thread,将MyRunnable类的实例作为参数传入,并调用start()方法来启动线程。
4. 多线程示例演示
下面是一个使用Runnable创建多线程来计算1~100之和的示例:
public class SumThread implements Runnable {
public long sum = 0;
public void run() {
for(int i=1; i<=100; i++) {
sum += i;
}
}
public static void main(String[] args) {
SumThread sumThread = new SumThread();
Thread thread = new Thread(sumThread);
thread.start();
try {
thread.join();
} catch (InterruptedException e) {
e.printStackTrace();
}
System.out.println("1~100 sum is " + sumThread.sum);
}
}
我们新建了一个SumThread类并实现了Runnable接口,覆盖了run()方法并在其中计算了1~100之和。在main()方法中,我们创建了SumThread类的实例sumThread,并将其作为参数传入Thread类的构造函数中。我们使用start()方法来启动线程并调用join()方法阻塞当前线程,等待子线程计算完毕后再进行输出操作。
以上就是关于“Java使用Thread创建多线程并启动操作示例”的完整攻略,希望对你有所帮助。
本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:Java使用Thread创建多线程并启动操作示例 - Python技术站