1.线程类的创建
方法一:定义新的线程类,重写线程执行任务的方法。
在这/*
进程:内存中的应用程序
线程:当程序被执行时,需要建立一条从CPU到程序的路径,这条路径称为线程
主线程:执行main方法的线程
单线程的缺点:当程序遇到异常时,后续代码将会得不到运行
*/
public class DemoThread01 {
public static void main(String[] args) {
for (int i = 0; i < 5; i++) {
System.out.println("旺财");
}
System.out.println(0/0);//Exception in thread "main"主线程异常,后续代码得不到执行
for (int i = 0; i < 6; i++) {
System.out.println("小强");
}
}
}
/*
创建多线程
01.创建多线程的类
格式 public class 线程名 extends Thread
02.重写run方法 定义线程的执行任务
03.创建线程对象 调用start方法
结果是:两个线程串行执行,(main主线程和自定义的线程)
调用start方法后,jvm会调用run方法
04.java中的线程调度是抢占式的,所以先执行后执行那个随机
*/
public class DemoThread02 extends Thread {
public DemoThread02
(String name)
{
super(name);
}//构造方法
@Override
public void run() {
for (int i = 0; i < 500; i++) {
System.out.println(Thread.currentThread().getName()+i);
}
}
}//重写进程的执行任务
package cn.icast.day15.Demo03;
public class MyThread {
public static void main(String[] args) {
DemoThread02 dt = new DemoThread02("小明");
dt.start();
for (int i = 0; i < 500; i++) {
System.out.println("小花"+i);
}
}
}//java中线程的执行是抢占式的,所以哪个进程先执行是不确定的
。