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

【我的Java笔记】多线程_使用匿名内部类的方式实现多线程

程序员文章站 2024-02-29 23:48:52
...

1.多线程中匿名内部类实现的方式:

(1)格式1:

new Thread(new Runnable(){
   // 方法重写 run()
   }).start();


(2)格式2:

new Thread(){

// 方法重写 run()

}


2.匿名内部类的实质:

继承了该类或者是实现了该接口的子类对象






例1:

public class ThreadDemo {

	public static void main(String[] args) {

		// 方式1:继承自Thread类
		new Thread("国际米兰") {
			@Override
			public void run() {

				for (int i = 0; i < 5; i++) {
					System.out.println(Thread.currentThread().getName() + ":" + i);
				}
			}

		}.start();		// 启动线程

		
		// 方式2:实现Runnable接口的方式
		new Thread(new Runnable() {
			@Override
			public void run() {
				for (int i = 0; i < 5; i++) {
					System.out.println(Thread.currentThread().getName() + ":" + i);
				}
			}
		}, "AC米兰").start();	// 启动线程

	}
}


【我的Java笔记】多线程_使用匿名内部类的方式实现多线程






例2:

public class ThreadDemo1 {

	public static void main(String[] args) {

		new Thread(new Runnable() {

			@Override
			public void run() {
				for (int i = 1; i <= 5; i++) {
					System.out.println("hello" + i);
				}
			}
		}) {
			@Override
			public void run() {
				for (int i = 1; i <= 5; i++) {
					System.out.println("world" + i);
				}
			}
		}.start();
	}
}


【我的Java笔记】多线程_使用匿名内部类的方式实现多线程

注:此例相当于方法的重写,所以打印的是第二个run() 方法里执行的数据