★★Java質問・相談スレッド136★★
■ このスレッドは過去ログ倉庫に格納されています
0100デフォルトの名無しさん
2010/02/10(水) 00:53:36嘘をおしえるな。
getResourceAsStreamはインスタンスメソッドだ。
クラスリテラルはそのクラスのClassインスタンスを返す。
だからSoundSample1.classの戻り値の型はClass<? extends SoundSample1>になる。
Class<? extends SoundSample1>インスタンスなのでClassクラスのインスタンスメソッドを使える。
関連してgetClass()はそのClassクラスのインスタンスを返すが実体はイレイジャ(ジェネリックのパラメタが消去されたObject型)なのでコンパイラにはObject型とみなされる。
SoundSample1.class.getResourceAsStream("voice.wav")はSoundSample1.classをロードしたクラスローダーの権限でgetResourceAsStream()を呼ぶ。
だから場合によっては特権コードで実行する必要がある。
■ このスレッドは過去ログ倉庫に格納されています