Java 仕様 SE 7 エディションから
§3.1ユニコード
プログラムは Unicode 文字セットを使用して作成されます。
§3.2字句翻訳
生の Unicode 文字ストリームは、次の 3 つの字句変換手順を使用して、一連のトークンに変換されます...
私はネイティブの文字エンコーディング (Windows-1252) でソース コードを書いており、仕様では (?) すべて生の Unicode 文字ストリームから始まり、字句変換 (Unicode エスケープ変換を含む) が実行されると述べているため、混乱しています。 .
彼らは、Unicodeエスケープを使用して、ASCII文字のみを使用して任意のUnicode文字を含めることができると述べています。以前の変換が実行された場合、それらは Unicode 文字セットのサブセット内の ASCII 文字を参照していると思います。これは理にかなっています。
ソース ファイルを Unicode に書き込むために使用されたエンコーディングからの以前の変換はありますか?
いくつかの情報は関連していますが、それはコンパイルプロセスではなく、実行時のテキスト処理のようなものだと思います: