If you are calling a static method, you shouldn't use an instance, even though it compiles because it is plain confusing. Consider the following.
Thread t = new Thread( ... );
t.start();
t.sleep(1000);
The last method doesn't operate on the thread t
as it is static. It causes the current thread to sleep.
Thread t = null;
t.yield(); // compiles and runs even thought `t` is null.
与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…