匿名内部类方式使用多线程

在开发中,为了方便使用线程,需要随手开线程,最简单的做法就是采用匿名内部类方式使用多线程
  匿名内部类的格式:
    new 类名或者接口名() {
      重写方法;
    }
  本质:是该类的子类对象或者该接口的实现类对象
    new Thread() {代码...}.start();
    new Thread(new Runnable() {代码...}) {}.start();
示例代码如下:

 1 package cn.itcast_11;
 2 
 3 /*
 4  * 匿名内部类的格式:
 5  *         new 类名或者接口名() {
 6  *             重写方法;
 7  *         }
 8  * 
 9  *         本质:是该类的子类对象或者该接口的实现类对象。
10  */
11 public class ThreadDemo {
12     public static void main(String[] args) {
13         // 继承Thread类来实现多线程
14         new Thread() {
15             @Override
16             public void run() {
17                 for (int x = 0; x < 100; x++) {
18                     System.out.println(Thread.currentThread().getName() + ":" + x);
19                 }
20             }
21         }.start();
22 
23         // 实现Runnable接口来实现多线程
24         new Thread(new Runnable() {
25             @Override
26             public void run() {
27                 for (int x = 0; x < 100; x++) {
28                     System.out.println(Thread.currentThread().getName() + ":" + x);
29                 }
30             }
31         }) {
32         }.start();
33 
34         // 面试题
35         // 到底执行的是Thread类的子类对象的run(),还是执行的是Runnable接口的实现类对象的run()呢? 答:是Thread类的子类对象的run() world
36         new Thread(new Runnable() {
37             @Override
38             public void run() {
39                 for (int x = 0; x < 100; x++) {
40                     System.out.println("hello" + ":" + x);
41                 }
42             }
43         }) {
44             @Override
45             public void run() {
46                 for (int x = 0; x < 100; x++) {
47                     System.out.println("world" + ":" + x);
48                 }
49             }
50         }.start();
51         
52     }
53 }
原文地址:https://www.cnblogs.com/chenmingjun/p/8729480.html