什么是进程?进程就是正在运行的应用程序,进程是线程的集合体。 什么是线程?线程就是一条执行路径,一个独立的执行单元。
什么是多线程?多线程就是用来提高程序效率的
创建线程的几种方式
1、使用继承Thread类的方式
2、使用实现runable接口的方式
3、使用匿名内部类方式
4、实现callable接口的方式
5、使用线程池的方式
方式一:继承Thread,重写run方法
package ThreadDemo; public class ThreadDemo01 { public static void main(String[] args) { // 1.怎么调用线程 CreateThreadDemo01 t1 = new CreateThreadDemo01(); // 2.启动线程 t1.start(); for (int i = 0; i < 30; i++) { System.out.println("main,i:" + i); } } } class CreateThreadDemo01 extends Thread { /** * run方法就是线程需要执行的任务或者执行的代码 */ public void run() { for (int i = 0; i < 30; i++) { System.out.println("run,i:" + i); } } }
方式二:实现Runnable接口,实现run方法
package ThreadDemo; public class ThreadDemo02 { /** * * 什么是进程?进程就是正在运行的应用程序,进程是线程的集合体。 什么是线程?线程就是一条执行路径,一个独立的执行单元。 * 什么是多线程?多线程就是用来提高程序效率的 * * * 创建线程的几种方式 1、使用继承Thread类的方式 2、使用实现runable接口的方式 3、使用匿名内部类方式 * 4、实现callable接口的方式 5、使用线程池的方式 */ public static void main(String[] args) { CreateThreadDemo02 t1 = new CreateThreadDemo02(); Thread thread = new Thread(t1); thread.start(); for (int i = 0; i < 30; i++) { System.out.println("主线程i:" + i); } } } class CreateThreadDemo02 implements Runnable { public void run() { for (int i = 0; i < 30; i++) { System.out.println("子线程run,i:" + i); } } }
方式三:匿名内部类
package ThreadDemo; public class ThreadDemo03 { public static void main(String[] args) { Thread t1 = new Thread(new Runnable(){ public void run(){ for (int i = 0; i < 30; i++) { System.out.println("子线程,i:" + i); } } }); t1.start(); for (int i = 0; i < 30; i++) { System.out.println("主线程i:" + i); } } }
方式四:实现Callable接口