threadについて

MainクラスはRunnableを実装している
Threadインスタンスとしてthrdを宣言して

mainメソッドで
thrd.start();

public void run() {}
の中で
thrd.sleep(1000);

とするとエラーなしで実行はできるものの注意マークがついていて気になっていた
要はstaticの問題

API referenceをみてみると
static void sleep(long millis)
システム・タイマーとスケジューラが正確であることを前提として、
現在実行中のスレッドを、指定されたミリ秒数の間、スリープ(一時的に実行を停止)させます。

となっていてsleep()メソッドはstaticがついている

しかし、staticの基本として、
static宣言されているフィールドやメソッドには
インスタンス変数名で呼び出しても→thrd.sleep();
クラス名で呼び出しても→Thread.sleep();
どちらでもOKなはず
(スッキリ入門367,368ページ)

なぜクラス名が推奨されるのかはよく分からないが
すくなくともクラス名を使うと注意マークが消えることはわかった