西西河

主题:【游戏】不看不知道,一看吓一跳!!! -- Highway

共:💬47 🌺6
分页树展主题 · 全看首页 上页
/ 4
下页 末页
        • 家园 和我想象的相反

          原来关键是static。

          受教了。

          在请教一下,这些会不会随编译器而不同?

          • 家园 不是static的问题。如果不是static,PrintWords没有办法

            直接使用Words class的fields的without creating a object first。

            我觉得关键是final。因为final意味着不能修改,所以Java编译器想优化程序,把Words里的值直接拿进去了。不巧second是个null,被留在了外面。如果我们去掉final,java编译器就“老实”了。结果如下:

            public static void main(String args[])

            {

            System.out.println((new StringBuilder()).append(Words.FIRST).append(" ").append(Words.SECOND).append(" ").append(Words.THIRD).toString());

            }

分页树展主题 · 全看首页 上页
/ 4
下页 末页


有趣有益,互惠互利;开阔视野,博采众长。
虚拟的网络,真实的人。天南地北客,相逢皆朋友

Copyright © cchere 西西河