# 线程
创建线程方法
-
创建一个类来继承Thread ,重写run方法,调用start开始进程
不建议使用避免oop单继承局限性
package com.xiong;
//创建线程方式一,创建一个类来继承Thread ,重写run方法,调用start开始进程
//线程不一定执行cup调度安排
public class Thread1 extends Thread{
@Override
public void run() {
for (int i = 0; i < 100; i++) {
System.out.println("我开始认真学java"+i);
}
}
public static void main(String[] args) {
Thread1 thread1=new Thread1();
thread1.start();
for (int i = 0; i < 1000; i++) {
System.out.println("我开始读书"+i);
}
}
}
-
实现runnable接口
推荐使用,避免了单继承的局限性,灵活方便,方便同一个对象被多个线程使用
package com.xiong;
public class TextThread2 implements Runnable{
@Override
public void run() {
for (int i = 0; i < 100; i++) {
System.out.println("我开始认真学java"+i);
}
}
public static void main(String[] args) {
TextThread2 thread1=new TextThread2();
Thread th=new Thread(thread1);
th.start();
for (int i = 0; i < 1000; i++) {
System.out.println("我开始读书"+i);
}
}
}
线程
创建线程方法
-
创建一个类来继承Thread ,重写run方法,调用start开始进程
不建议使用避免oop单继承局限性
package com.xiong;
//创建线程方式一,创建一个类来继承Thread ,重写run方法,调用start开始进程
//线程不一定执行cup调度安排
public class Thread1 extends Thread{
@Override
public void run() {
for (int i = 0; i < 100; i++) {
System.out.println("我开始认真学java"+i);
}
}
public static void main(String[] args) {
Thread1 thread1=new Thread1();
thread1.start();
for (int i = 0; i < 1000; i++) {
System.out.println("我开始读书"+i);
}
}
}
-
实现runnable接口
推荐使用,避免了单继承的局限性,灵活方便,方便同一个对象被多个线程使用
package com.xiong;
public class TextThread2 implements Runnable{
@Override
public void run() {
for (int i = 0; i < 100; i++) {
System.out.println("我开始认真学java"+i);
}
}
public static void main(String[] args) {
TextThread2 thread1=new TextThread2();
Thread th=new Thread(thread1);
th.start();
for (int i = 0; i < 1000; i++) {
System.out.println("我开始读书"+i);
}
}
}
加粗样式