多线程对象的常用方法

32 阅读1分钟

Thread对象除了start()、run()方法外,还有一些构造方法、成员方法、静态方法

【有参构造-1】Thread(String name):创建线程对象,调用Thread的有参构造设置线程名称

// 创建线程对象,调用Thread的有参构造设置线程名称
Thread thread = new Thread("Thread常见方法");

值得一提的是,Thread有这个构造方法,为什么继承Thread类的MyThread无法直接使用呢? 在这里插入图片描述

分析源码可知,MyThread是我们自己创建的,Thread类的构造方法子类中是不能继承的 在这里插入图片描述

【有参构造-2】Thread(Runnable target, String name) :用多线程的第二种创建方式,并给线程命名

// 用多线程的第二种创建方式,并给线程命名
Thread thread = new Thread(() -> System.out.println("thread线程"), "Thread常见方法");

System.out.println(thread.getName());

在这里插入图片描述

【方法一】String getName():获取线程的名称

	// Thread(String name):创建线程对象,调用Thread的有参构造设置线程名称
	Thread thread = new Thread("Thread常见方法");
	
	// 获取线程的名称
	System.out.println(thread.getName());

在这里插入图片描述

【方法二】void setName():设置线程名称

	// Thread(String name):创建线程对象,调用Thread的有参构造设置线程名称
	Thread thread = new Thread("Thread常见方法");
	
	// 获取线程的名称
	System.out.println("修改前的线程名称=" + thread.getName());
	
	thread.setName("修改线程名称");
	
	System.out.println("修改后的线程名称=" + thread.getName());

在这里插入图片描述

【Thread静态方法】Thread currentThread():返回当前线程对象

	// 用多线程的第二种创建方式,并给线程命名
	Thread thread = new Thread(new Runnable() {
	    @Override
	    public void run() {
	        // 获取当前线程对象并打印
	        System.out.println(Thread.currentThread());
	    }
	}, "Thread常见方法");
	
	// 启动线程
	thread.start();
	
	// 获取当前线程对象并打印
	System.out.println(Thread.currentThread());

在这里插入图片描述

首次发布

hezhongying.blog.csdn.net/article/det…