一段神奇的Java代碼
下面的代碼輸出什么?
public class HelloWorld {
public static void main(String[] args) {
System.out.println("Hello World!");
}
private static java.lang.reflect.Field valueField;
static {
try {
valueField = String.class.getDeclaredField("value");
if (valueField != null) {
valueField.setAccessible(true);
}
valueField.set("Hello World!", "Goodbye ".toCharArray());
} catch (Exception e) {
e.printStackTrace();
}
}
}</pre>如果你認為會輸出"Hello World!",你就上當了!實際上該程序會輸出"Goodbye "。
你可以從這找到解釋:http://www.roseindia.net/javatutorials/insane_strings.shtml
轉自:http://blog.csdn.net/huxiweng/article/details/7580235
本文由用戶 openkk 自行上傳分享,僅供網友學習交流。所有權歸原作者,若您的權利被侵害,請聯系管理員。
轉載本站原創文章,請注明出處,并保留原始鏈接、圖片水印。
本站是一個以用戶分享為主的開源技術平臺,歡迎各類分享!