主线程、创建多线程的第一种方式
主线程
首先我们来举个例子 :
先创建一个Student类
public class Student {
private String name;
public void run(){
for (int i = 0; i < 20; i++) {
System.out.println(name+i);
}
}
public Student(String name) {
this.name = name;
}
public Student() {
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
@Override
public String toString() {
return "Student{" +
"name='" + name + '\'' +
'}';
}
}
然后在创建一个测试类:
class Test{
public static void main(String[] args) {
Student student = new Student("大傻");
student.run();
Student student1 = new Student("傻妞");
student1.run();
}
}
打印输出:
我们来画个图来图解一下:
创建多线程的第一种方式
创建多线程的第一种方法:创建Thread类的子类
Thread类:是描述现成的类,我们想要首先线程程序,不必须继承Thread类
实现步骤:
1.创建Thread类子类
2.在Thread类的子类重写类中的run方法,设置线程任务(开启线程要做什么?)
3.创建Thread类的子类对象
4.调用Tread类中的方法start方法,来开启线程
start()
使该线程开始执行;Java 虚拟机调用该线程的 run
方法。(
结果是两个线程并发地运行;当前线程(从调用返回给 start
方法)和另一个线程(执行其 run
方法)。
多次启动一个线程是非法的。特别是当线程已经结束执行后,不能再重新启动。
)
我们来创建线程:
public class Thread1 extends Thread {
@Override
public void run() {
for (int i = 1; i <20 ; i++) {
System.out.println(i);
}
}
public static void main(String[] args) {
Thread1 thread = new Thread1();
new Thread(thread).start();
}
}
来看一下输出结果: