欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

Java——匿名内部类实现线程的两种方式

程序员文章站 2024-03-23 23:12:10
...
package com.yy.thread;

public class Demo4_Thread {

    public static void main(String[] args) {
        demo1();        //匿名内部类,第一种,继承Thread

        demo2();        //匿名内部类,第二种,实现Runnable接口    
}

    private static void demo2() {
        new Thread( new Runnable() {                //1,将Runnable的子类对象当作参数传递给Thread的构造方法  ;new Runnable(){}:实现Runnable接口
            public void run(){                      //2,重写run方法
            for (int i = 0; i < 1000; i++) {        //3,将要执行的代码写到run方法中
                System.out.println("wsq");
            }
        }
    }).start();                                     //4,开启线程 
    //new到.start();这直接,整部分的内容代表Runnable接口的子类对象,
}

    private static void demo1() {                   //代表Thread的子类对象,Thread类里面有start方法,可以直接调用
        new Thread(){                               //1,new一个类(){},继承Thread这个类
            public void run(){                      //2,重写run方法
                for (int i = 0; i < 1000; i++) {    //3,将要执行的代码写到run方法中
                    System.out.println("aaawsqaaa");
                }
            }
        }.start();                                  //4,开启线程
    //new到.start();这直接,整部分的内容表示Thread类的子类对象,然后.start就会调用run()方法,start就把线程给开启,然后调用run()方法
    }
}