javaコンパイルは相対パス?

javacコマンドによるコンパイルとその後のjavaコマンドによる、作成classはコンパイル時の相対パス依存するのではないかといぶかっています。このコメントは、Java勉強会第2週 - もやしもん 君にも見える菌 細菌 ウィルス 微生物に対するものです。

あるファイル SampleD2L1.javaをカレントディレクトリ で、javac SampleD2L1.javaコンパイルすると、正常にコンパイルが終了し、カレントディレクトリにSampleD2L1.classが作成され、それをカレントディレクトリで java SampleD2L1 と実行したところ、コンソールに、意図したとおりの文字列"10日で覚えるJAVA 2日目1次元目\n修飾子としてのpublic,javaプログラムを動かすための不可欠な要素であるmainメソッドの存在を読了"が、\nの改行も含めて、成功裏に出力されました。

ところが、この同じSampleD2L1.javaファイルを、一段上位のディレクトリから、javac .\SampleD2L1.javaコンパイルしたところ、コンパイルはエラーなしに実行され、.\04222005-2\SampleD2L1.class ファイルが作成されるのですが、このclassファイルを、java .\SampleD2L1 として実行してやると、『Exception in thread "main" java.lang.NoClassDefFoundError: /\04222005-2\SampleD2L1』というエラーメッセージが出ました。