注释中的代码真的不会执行吗

注释中的代码是否会被执行呢?我毫不犹豫的回答,不回执行。然而,是真的可能会执行。请往下看:

// 猜猜结果会是什么呢?
public
class Test01 { public static void main(String[] args) { String a = "Hello zss!"; // \u000d a = "foolish opt!"; System.out.println(a); } }

输出结果是:foolish opt!

 

 

为什么会如此呢?

因为 \u000d 是unicode编码中的换行--“\r” java编译器会处理unicode字符。编译后等于如下情况:

String a = "Hello zss!";
a = "foolish opt!";
System.out.println(a);
String b = "a \\\\u000d b";
System.out.println(b);

 


 

posted @ 2020-05-20 10:42  xiaoss  阅读(798)  评论(0编辑  收藏  举报