java中线程子类获取当前线程的引用时,线程子类调用Thread.currentThread()方法的疑问,谢谢大神。

java中线程子类获取当前线程的引用时,线程子类调用Thread.currentThread()方法,currentThread()前为什么要加Thread.?加了以后返回的不就是父类线程的引用了吗?

其实你问的应该是为什么直接写Thread。

先看下api上如此写:

currentThread

public static Thread currentThread()

返回对当前正在执行的线程对象的引用。

可见这时个静态方法,你这么理解更好点:你在哪个线程调用的我(currentThread),我就给你返回哪个线程。跟父子其实没有关系的,你在父中调用我,我就返回你说的父线程,你在子调用我就返回子线程,你在main主线程调用,我就返回主线程。也就是说你cpu正在运行哪个线程。如图:

温馨提示:内容为网友见解,仅供参考
无其他回答

JAVA中这个Thread.currentThread是什么意思
简单来说就是 Tthread类(线程类) 中的一个方法 Thread.currentThread() 是指获取当前运行的线程对象 例如:Thread.currentThread().getName() 就是获取当前运行的线程的名称 简单来说这就差不多了

JAVA中这个Thread.currentThread是什么意思
Thread.currentThread()可以获取当前线程的引用,一般都是在没有线程对象又需要获得线程信息时通过Thread.currentThread()获取当前代码段所在线程的引用。

JAVA中这个Thread.currentThread是什么意思
java 里的Thread.currentThread是指当前的执行线程,如代码所示:

JAVA中这个Thread.currentThread是什么意思
上代码先:class MyThread extends Thread {@Overridepublic void run() {try {Thread.sleep(500);Thread t = Thread.currentThread();System.out.println("当前线程名字:" + t.getName() + " 当前线程的优先级别为:"+ t.getPriority() + " ID:" + t.getId());\/\/System.out.println("...

JAVA中这个Thread.currentThread是什么意思
一个thread就是一个线程,当编程使用多线程的时候,用currentthread()这个method来获取当前运行线程,

java中这个thread.currentthread是什么意思
简单来说就是 Tthread类(线程类) 中的一个方法 Thread.currentThread() 是指获取当前运行的线程对象 例如:Thread.currentThread().getName() 就是获取当前运行的线程的名称 作者:逸晨 链接:http:\/\/www.zhihu.com\/question\/20944522\/answer\/28057928 来源:知乎 著作权归作者所有,转载请联...

JAVA中这个Thread.currentThread是什么意思
Thread.currentThread()与this表示同一对象。否则,就必须使用Thread.currentThread()获取当前线程。而且既然是使用到了多线程,多半情况下都不会知道系统当前执行的是哪块线程,所以你需要调用Thread.currentThread()方法来获取系统当前正在执行的一条线程,然后才可以对这个线程进行其他操作,就是这个意思。

JAVA中这个Thread.currentThread是什么意思
java 里的Thread.currentThread是指当前的执行线程,如代码所示:public class Program {public static void main(String[] args) { Task task=new Task(); Thread thread_1=new Thread(task); Thread thread_2=new Thread(task); thread_1.start(); thread_2.start();}}class...

JAVA中这个Thread.currentThread是什么意思
Thread.currentThread 的意思是得到当前的线程, 用来对当前的线程进行操作

JAVA中这个Thread.currentThread是什么意思
您好,提问者:获取当前运行的 线程对象,你可以Thread.currentThread.getName()输出一下线程的名字。

相似回答