传统线程的两种创建方法

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接: https://blog.csdn.net/u013131716/article/details/100901759

传统创建线程的两种方式:
1.直接new Thread创建对象;
2.利用Runnable进行创建;

实现代码

package com.test.threads;

public class Thread01 {

	public static void main(String[] args) {
		
		//方式一直接new Thread创建对象
		Thread thread = new Thread(){
			@Override
			public void run() {		
				while(true){
					try {
						Thread.sleep(500);
					} catch (InterruptedException e) {
						e.printStackTrace();
					}
					
					System.out.println("1:" + Thread.currentThread().getName());
					System.out.println("2:" + this.getName());
				}
			}
		};
		thread.start();
		
		
		//方式二利用Runnable进行创建
		Thread thread2 = new Thread(new Runnable() {		
			@Override
			public void run() {
				while(true){
					try {
						Thread.sleep(500);
					} catch (InterruptedException e) {
						e.printStackTrace();
					}
					
					System.out.println("1:" + Thread.currentThread().getName());
					//此处不可以再使用this进行调用
					//System.out.println("2:" + this.getName());
				}
				
			}
		});
		thread2.start();
		
	//方式三:区分Runable()中的run()和Thread中的run(),被覆盖,执行的事Thread 中的run()方法
		new Thread(new Runnable() {
			@Override
			public void run() {
				while(true){
					try {
						Thread.sleep(500);
					} catch (InterruptedException e) {
						e.printStackTrace();
					}		
					System.out.println("runable中运行" + Thread.currentThread().getName());
				}
			}
		}){
			public void run() {
				while(true){
					try {
						Thread.sleep(500);
					} catch (InterruptedException e) {
						e.printStackTrace();
					}
					
					System.out.println("thread中运行:" + Thread.currentThread().getName());
				}
			}
		}.start();
	}
}

运行结果:
在这里插入图片描述

猜你喜欢

转载自blog.csdn.net/u013131716/article/details/100901759