其实最根本的原因是Thread的name字段是私有的,即使Thread的子类也看不到name字段。证据是下面的java源代码
public
class Thread implements Runnable {
/* Make sure registerNatives is the first thing <clinit> does. */
private static native void registerNatives();
static {
registerNatives();
}
private char name[];
private int priority;
private Thread threadQ;
private long eetop;