匿名内部类创建线程的两种方式

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/qian_ch/article/details/57419720

我们知道多线程的实现有两种方式,一种是继承Thread类,另一种是实现Runnable接口,然后再重写run方法,最后开启线程。我们在普通的创建线程中,显然是比较麻烦的,那么有没有一个简单的方法呢?今天小钱就给大家介绍使用匿名内部类创建线程,为什么要使用匿名内部类呢,因为使用它代码更简洁也更方便,同样地,它也有两种方式:下面我们来看第一种使用匿名内部类创建线程的方式:
1.首先我们要在一个类中new出一个继承Thread类;
2.然后重写run方法;
3.将我们要执行的代码写在run方法中。下面我们来看一个Demo案例:

package cn.edu.jit.thread;
/**
 * 匿名内部类实现线程的两种方式
 * @author kevin
 *
 */
public class ThreadDemo04 {
    public static void main(String[] args) {
        /*
         * 第一种方式:
         * 1.继承Thread类
         * 2.重写run方法
         * 3.将要执行的代码写在run方法中
         */
        new Thread() {
            public void run() {
                for (int i = 0; i < 10; i++) {
                    System.out.println("aaaaaaaaa");
                }
            }
        }.start();//开启线程
    }
}

  
  
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24

将new继承Thread类的花括号后面必须要.start()方法,说明该线程开启。
运行结果:

aaaaaaaaa
aaaaaaaaa
aaaaaaaaa
aaaaaaaaa
aaaaaaaaa
aaaaaaaaa
aaaaaaaaa
aaaaaaaaa
aaaaaaaaa
aaaaaaaaa
  
  
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10

以上就是匿名内部类创建线程继承Thread类完成了,那么实现Runnable接口,我们该怎么做呢?
1.将Runnable的子类对象传递给Thread的构造方法;
2.重写run方法;
3.将执行的代码写在run方法中,最后我们开启线程。
下面我们继续看这个案例:

        /*
         * 第二种方式:
         * 1.将Runnable的子类对象传递给Thread的构造方法
         * 2.重写run方法
         * 3.将执行的代码写在run方法中,最后我们开启线程
         */
        new Thread(new Runnable() {
            public void run() {
                for (int i = 0; i < 10; i++) {
                    System.out.println("bbbbbbbbb");
                }
            }
        }).start();//开启线程
  
  
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13

运行结果:

bbbbbbbbb
bbbbbbbbb
bbbbbbbbb
bbbbbbbbb
bbbbbbbbb
bbbbbbbbb
bbbbbbbbb
bbbbbbbbb
bbbbbbbbb
bbbbbbbbb
  
  
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10

以上就是介绍匿名内部类创建线程的两种方式。

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/qian_ch/article/details/57419720

我们知道多线程的实现有两种方式,一种是继承Thread类,另一种是实现Runnable接口,然后再重写run方法,最后开启线程。我们在普通的创建线程中,显然是比较麻烦的,那么有没有一个简单的方法呢?今天小钱就给大家介绍使用匿名内部类创建线程,为什么要使用匿名内部类呢,因为使用它代码更简洁也更方便,同样地,它也有两种方式:下面我们来看第一种使用匿名内部类创建线程的方式:
1.首先我们要在一个类中new出一个继承Thread类;
2.然后重写run方法;
3.将我们要执行的代码写在run方法中。下面我们来看一个Demo案例:

猜你喜欢

转载自blog.csdn.net/wyq188945/article/details/83751448