发了聊天记录,引出大家对java中优化现象的了解。 本帖最后由 myoswin7 于 2010-05-11 10:51:56 编辑 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 package com.test.string;public class AboutEquals { public static void main(String arg[]) { AboutEquals ae= new AboutEquals(); ae.fun1(); ae.fun2(); ae.fun3(); } void fun1() { String s1 = "a" + "b" + "c"; String s2 = "abc"; System.out.println(s1 == s2); } void fun2() { String s1 = new String("Hello"); String s2 = new String("Hello"); System.out.println(s1 == s2); } void fun3() { String s1 = new String("Hello"); String s2 = "Hello"; System.out.println(s1 == s2); }}输出truefalsefalse 大家能给出java优化的其他情形和实例吗?比如说hashmap比如说临时对象等等还有大家对jvm的研究都分享出来吧 女人是MC,month clock这个绝对的WC..... week clock...非厕所啊 String 优化,记住编译期能确定的,一定会给你全优化了。曾经,还是JDK1.0/1.1的时候,书上说, private final加上编译优化,会导致这个方法被内联到调用处。我已经记不得自己是否测试过。 应该不是的。javac的编译优化一直是个摆设,编译器根本不处理。final是否内联看虚拟机了。 private final加上编译优化现在已经不用了吧 貌似从来就没用过。很早的书《Practical Java》就说javac不处理编译优化的,现在的编译器也不处理优化。优化是jvm的事情。 我还有台586,上面保留着JDK1.1,改天试试看。 java jdk源文件修改 包名问题 JAVA运行异常问题 input属性 关于Object ldap sorting,达人们请进 一个 对象序列化的 例子,请老大帮我看看,有什么问题?? 求救,web部署问题 真么金山词霸在jbuilder5 的菜单上取词无效? JDK1.3 下命令行“java -cp ... ”超过256个字符怎么办? 有没有较好的jbuilder的书推荐 java运行时动态调用其他class文件中的方法 求高手指点正则表达式
package com.test.string;public class AboutEquals { public static void main(String arg[]) {
AboutEquals ae= new AboutEquals();
ae.fun1();
ae.fun2();
ae.fun3();
} void fun1() {
String s1 = "a" + "b" + "c";
String s2 = "abc";
System.out.println(s1 == s2);
} void fun2() {
String s1 = new String("Hello");
String s2 = new String("Hello");
System.out.println(s1 == s2);
} void fun3() {
String s1 = new String("Hello");
String s2 = "Hello";
System.out.println(s1 == s2);
}}
输出
true
false
false
女人是MC,month clock
这个绝对的WC..... week clock...非厕所啊
javac的编译优化一直是个摆设,编译器根本不处理。
final是否内联看虚拟机了。
很早的书《Practical Java》就说javac不处理编译优化的,现在的编译器也不处理优化。优化是jvm的事情。
我还有台586,上面保留着JDK1.1,改天试试看。