1_7_2_07_多线程原理_随机性打印结果1_7_2_08_多线程原理_多线程内存图解1_7_2_09_Thread类的常用方法_获取线程名称1_7_2_10Thread类的常用方法_设置线程名称

1_7_2_07_多线程原理_随机性打印结果1_7_2_08_多线程原理_多线程内存图解

程序和上一次的一样。

1_7_2_09_Thread类的常用方法_获取线程名称

MyThread的代码

public class MyThread extends Thread{
	@Override
	public void run(){
		String name = getName();
		System.out.println(name);
	}
}

主程序代码

public class Hello {
    public static void main(String[] args) {
    	MyThread mt = new MyThread();
    	mt.start(); 
    }
}

输出

接下来改变主程序代码

public class Hello {
    public static void main(String[] args) {
    	MyThread mt = new MyThread();
    	mt.start(); 
//   	加入新的代码 	
    	new MyThread().start();
    	new MyThread().start();
    	new MyThread().start();
    }
}

输出

说明这四个线程是同一个优先级的

获取线程名字-方法2

Thread name = Thread.currentThread();
System.out.println(name);

MyThread的程序:不使用getName()方法

public class MyThread extends Thread{
	@Override
	public void run(){
		Thread name = Thread.currentThread();
		System.out.println(name);
	}
}

输出

使用getName()方法

	Thread t = Thread.currentThread();
		String name = t.getName();
		System.out.println(name);
public class MyThread extends Thread{
	@Override
	public void run(){
		Thread t = Thread.currentThread();
		String name = t.getName();
		System.out.println(name);
	}
}

System.out.println(Thread.currentThread().getName());集成起来

MyThread代码

public class MyThread extends Thread{
	@Override
	public void run(){ 
		System.out.println(Thread.currentThread().getName());
	}
}

1_7_2_10_Thread类的常用方法_设置线程名称

MyThread代码

public class MyThread extends Thread{
	@Override
	public void run(){ 
		System.out.println(Thread.currentThread().getName());
	}
}

主方法

public class Hello {
    public static void main(String[] args) {
    	 MyThread mt = new MyThread();
    	 mt.setName("hello");
    	 mt.start();
    }
}

方法2,不太懂

MyThread代码

public class MyThread extends Thread{
	public MyThread(){}
	public MyThread(String name){
		super(name);
	}
	@Override
	public void run(){ 
		System.out.println(Thread.currentThread().getName());
	}
}

主方法

public class Hello {
    public static void main(String[] args) {
    	 MyThread mt = new MyThread();
    	 mt.setName("小强");
    	 mt.start();
    	 
//    	 开启多线程
    	 new MyThread("旺财").start();
    }
}
  


  

猜你喜欢

转载自blog.csdn.net/qq_34318539/article/details/93302053