让我们在Java中看到以下代码片段。
public class Main {
public static void main(String[] args) {
// new Character(' \u000d System.out.println("Hello");
}
}
在上面的代码中,尽管main()
方法中的唯一一行已被注释掉,但它在控制台上显示输出Hello
,即使此注释行看起来包含一些语法错误。如果此行未注释,则根本不起作用,从而导致编译时错误。
为什么输出"你好"这里吗?
答案 0 :(得分:44)
Java解析源代码中的字符转义码,而不仅仅是字符串 这允许您在没有Unicode编码的情况下使用Unicode标识符。
因此,注释中的\u000d
将被解析为换行符,结束注释并开始实例初始值设定项。