创建线程的五种写法
1、通过继承Thread类并实现run方法创建一个线程package 创建线程; 2、通过实现Runnable接口,并实现run方法的方法创建一个线程 3、通过Thread匿名内部类创建一个线程 4、通过Runnable匿名内部类创建一个线程 5、通过Lambda表达式的方式创建一个线程
1、通过继承Thread类并实现run方法创建一个线程package 创建线程;
class MyThread01 extends Thread {
@Override
public void run ( ) {
System . out. println ( "hello thread!" ) ;
}
}
public class demo1 {
public static void main ( String [ ] args) {
MyThread01 myThread01 = new MyThread01 ( ) ;
myThread01. start ( ) ;
}
}
2、通过实现Runnable接口,并实现run方法的方法创建一个线程
class MyRunnable01 implements Runnable {
@Override
public void run ( ) {
System . out. println ( "hello thread!" ) ;
}
}
public class demo2 {
public static void main ( String [ ] args) {
MyRunnable01 runnable01 = new MyRunnable01 ( ) ;
Thread t = new Thread ( runnable01) ;
t. start ( ) ;
}
}
3、通过Thread匿名内部类创建一个线程
public class demo3 {
public static void main ( String [ ] args) {
Thread t = new Thread ( ) {
@Override
public void run ( ) {
System . out. println ( Thread . currentThread ( ) . getName ( ) ) ;
}
} ;
t. start ( ) ;
}
}
4、通过Runnable匿名内部类创建一个线程
public class demo4 {
public static void main ( String [ ] args) {
Thread t = new Thread ( new Runnable ( ) {
@Override
public void run ( ) {
System . out. println ( Thread . currentThread ( ) . getName ( ) ) ;
}
} ) ;
t. start ( ) ;
}
}
5、通过Lambda表达式的方式创建一个线程
public class demo5 {
public static void main ( String [ ] args) {
Thread t = new Thread ( ( ) -> {
while ( true ) {
System . out. println ( Thread . currentThread ( ) . getName ( ) ) ;
try {
Thread . sleep ( 1000 ) ;
} catch ( InterruptedException e) {
e. printStackTrace ( ) ;
}
}
} ) ;
t. start ( ) ;
}
}