package com.yy.threadmethod;public class Demo2_CurrentThread {
/*** public static Thread currentThread()返回对当前正在执行的线程对象的引用。 * 返回:当前执行的线程。返回的是一个Thread* 该方法主要是为了协助 实现通过Runnable接口来对线程进行设置和获取线程的名称的* */public static void main(String[] args) {new Thread (){ //匿名内部类;public void start()是Thread类中的方法;new Thread (){}继承Thread这个类public void run(){System.out.println(this.getName() + " aaaaa"); }}.start(); //开启一个线程//第一个线程new Thread(new Runnable(){ //new Runnable(),实现Runnable接口;new Runnable(){...}这些是Runnable的的一个子类对象,并不是Thread的子类对象,所以不能直接使用Thread类中的方法//若非得想要getName()这个方法,得想法获取当前正在执行的线程,通过currentThread(),来获取,它是静态的方法,所以直接 类名. 调用即可public void run(){ //重写run方法System.out.println(Thread.currentThread().getName() + " bbbbb");//public static Thread currentThread():返回对当前正在执行的线程对象的引用 。也就是 获取到当前正在执行的线程,然后在通过getName()方法,拿到名字//Thread.currentThread():表示获取到当前正在执行的线程,然后在通过 .getName() 来获取线程的名称//然后将 new到.start()之间的内容当成参数传给Thread的构造方法(new Thread())就可以啦}}).start(); //然后,通过.start()方法,开启线程//第二个线程//写在主线程这个方法里面了,就意味着获取主线程的名称Thread.currentThread().setName("我是主线程"); //设置主线程的名称 //第三个线程,也就是主线程System.out.println(Thread.currentThread().getName()); //获取主线程的名称}}