char c3 ='\ u000a';
的的的System.out.println(C3);
// \ u000a是一个LineFeed,即换行,编译后为System.out.print( );
编译器会报:
Exception in thread "main" java.lang.Error: Unresolved compilation problem:
Invalid character constant
如果你看过java puzzzlers你会知道。
其实编译的时候编译器会把源代码中所有的unicode代码转换过来,然后再做语法分析,
你的这些代码
System.out.print(“\ u000a”);
编译程序先会讲他变成
System.out.print( );
然后在开始编译(可能这里应该叫做语法分析)
接下来
打印()没有空参重载形式,所以为错