网站首页
JSP空间
动态资讯
开源项目
技术文档
资源下载
J2EE资源
客户论坛
在线支付
 
  技术文档>>JAVA>>新手入门>>基础入门>查看文档  
  java入门--漫谈java程序的性能优化     
  文章作者:未知  文章来源:赛迪网技术社区  
  查看:59次  录入:管理员--2008-03-14  
 

java使得复杂应用的开发变得相对简单。毫无疑问,它的这种易用性对java的大范围流行功不可没。然而,这种易用性实际上是一把双刃剑。一个设计良好的java程序,性能表现往往不如一个同样设计良好的c++程序。在java程序中,性能问题的大部分原因并不在于java语言,而是在于程序本身。养成好的代码编写习惯非常重要,比如正确地、巧妙地运用java.lang.string类和java.util.vector类,它能够显著地提高程序的性能。下面我们就来具体地分析一下这方面的问题。

在java中,使用最频繁、同时也是滥用最多的一个类或许就是java.lang.string,它也是导致代码性能低下最主要的原因之一。请考虑下面这个例子:



string s1 = "testing string";
string s2 = "concatenation performance";
string s3 = s1 + " " + s2;
 


几乎所有的java程序员都知道上面的代码效率不高。那么,我们应该怎么办呢?也许可以试试下面这种代码:



stringbuffer s = new stringbuffer();
s.append("testing string");
s.append(" ");
s.append("concatenation performance");
string s3 = s.tostring();
 


这些代码会比第一个代码片段效率更高吗?答案是否定的。这里的代码实际上正是编译器编译第一个代码片段之后的结果。既然与使用多个独立的string对象相比,stringbuffer并没有使代码有任何效率上的提高,那为什么有那么多的java书籍批评第一种方法、推荐使用第二种方法?

第二个代码片段用到了stringbuffer类(编译器在第一个片段中也将使用stringbuffer类),我们来分析一下stringbuffer类的默认构造函数,下面是它的代码:



public stringbuffer() { thi

 
 
上一篇: 数据库相关--hibernate的事务和并发    下一篇: java源码分析:深入探讨iterator模式
  相关文档
学习DisplayTag想到的学习方法 03-25
设计心得——用 xdoclet 减少代码膨胀 11-17
apache cxf2.0发布并通过jax-ws2.0 tck 11-17
开发线程安全的spring web应用 11-16
java swing入门基础 11-16
关于java栈与堆的思考 11-16
java安全体系结构 11-17
java认证问答 11-17
jsp如何与ejb sessionbean通讯 11-17
java线程编程(一):线程基础 11-17
java高级应用符合oo惯例的表现层控制 11-17
java、xml与数据库编程实践(三) 11-16
java纵横谈 11-17
j2ee开发平台 11-17
深入浅析tomcat配置技巧 top 10 11-17
破除java神话之一 11-16
什么是java混淆编译器 11-17
java中的内部类和匿名类 11-17
java swing 组件全演示 11-16
java学习过程的一些重点(二) 11-17
返回首页 | 关于我们 | J网章程 | JSP空间合租 | 客服中心 | 免责声明 | 常见问题 | 参观机房
本站主机空间代理至厦门市华众网络科技有限公司
《中华人民共和国增值电信业务经营许可证》
编号:闽B2-20050079
@2005-2008福建JSP技术网 版权所有 闽ICP备05000928号
厦门(总部):13616026886 福州:0591-87655121
邮箱:admin@fjjsp.com 站长QQ,点击这里给我发消息