2016-12-30 82 views
0

我有一種被稱爲這個Stack Overflow Post關於\u000d爲什麼執行的意見,以在運行時被當作新的行字符由於其像這樣的代碼:用「 u000d」的工作,但不是「 n」

public static void main(String[] args) 
{   
    // \u000d System.out.println("comment executed"); 
} 

將輸出"comment executed"但我從來沒有完全真正理解這是爲什麼,當我有更多的常規形式\n更換\u000d,評論不像以前的方式工作。

+0

'的最底部找到 「\ n」'是沒有別的不僅僅是' 「\ n」'。你需要「某人」來把它解釋爲一個真正的新線人物。編譯器爲unicode做了這些。但我想一點研究也告訴過你。 – Tom

+0

[爲什麼在允許某些Unicode字符的註釋中執行Java代碼?](http://stackoverflow.com/questions/30727515/why-is-executing-java-code-in-comments-with-certain- Unicode的字符允許的) – VGR

回答

1

Java編譯器不查找在評論轉義序列,只有統一。

我在java語言規範的註釋部分找到了一些小的打印。

在第3.10.6 - Escape Sequences for Character and String Literals:提供用於與C兼容性

八路逃逸,但是隻能表示Unicode值\ u0000到\ u00FF,所以Unicode轉義通常是優選的。

這可以在節3.10.6

相關問題