作者简介: zoro-1,目前大二,正在学习Java,数据结构,mysql,javaee等
作者主页: zoro-1的主页
欢迎大家点赞 👍 收藏 ⭐ 加关注哦!💖💖
线程的创建方式
- 第一种:自己实现一个继承Thread的类
- 第二种:自己实现一个实现Runnable的类
- 第三种:传一个继承Thread的匿名内部类
- 第四种:传一个实现Runnable的匿名内部类
- 第五种:使用lambda表达式(函数接口)
第一种:自己实现一个继承Thread的类
class myThread extends Thread{@Overridepublic void run() {System.out.println("myThread");}
}
public class TreadText {public static void main(String[] args) {//自己继承Thread重写run方法Thread thread=new myThread();thread.start();}}
第二种:自己实现一个实现Runnable的类
class myRunnable implements Runnable{@Overridepublic void run() {System.out.println("myRunnable");}
}
public class TreadText {public static void main(String[] args) {//实现Runnable相当于一个代码块还是用Thread创建线程Thread thread2=new Thread(new myRunnable());thread2.start();}
}
第三种:传一个继承Thread的匿名内部类
public class TreadText {public static void main(String[] args) {//传一个继承Thread匿名内部类Thread thread4=new Thread(new Thread(){public void run() {while (true) {System.out.println("thread4");try {Thread.sleep(1000);} catch (InterruptedException e) {throw new RuntimeException(e);}}}});thread4.start();}
}
第四种:传一个实现Runnable的匿名内部类
public class TreadText {public static void main(String[] args) {//传一个实现Runnable匿名内部类Thread thread3=new Thread(new Runnable(){@Overridepublic void run() {System.out.println("thread3");}});thread3.start();}
}
第五种:使用lambda表达式(函数接口)
public class TreadText {public static void main(String[] args) {//函数接口底层还是用RuanableThread thread1=new Thread(()-> System.out.println("thread1"));thread1.start();}
}
今天的分享到此就结束了,感谢大家支持