`

java代码优化总结

 
阅读更多
1. 尽量在合适的场合使用单例

使用单例可以减轻加载的负担,缩短加载的时间,提高加载的效率,但并不是所有地方都适用于单例,简单来说,单例主要适用于以下三个方面:
第一,控制资源的使用,通过线程同步来控制资源的并发访问;
第二,控制实例的产生,以达到节约资源的目的;
第三,控制数据共享,在不建立直接关联的条件下,让多个不相关的进程或线程之间实现通信。

2. 尽量避免随意使用静态变量
要知道,当某个对象被定义为stataic变量所引用,那么gc通常是不会回收这个对象所占有的内存,如
Java代码
1.public class A{  
2.static B b = new B();  
3.} 
public class A{
static B b = new B();
}
此时静态变量b的生命周期与A类同步,如果A类不会卸载,那么b对象会常驻内存,直到程序终止。


3. 尽量使用final修饰符
带有final修饰符的类是不可派生的。在Java核心API中,有许多应用final的例子,例如java.lang.String。为String类指定final防止了使用者覆盖length()方法。另外,如果一个类是final的,则该类所有方法都是final的。Java编译器会寻找机会内联(inline)所有的final方法(这和具体的编译器实现有关)。此举能够使性能平均提高50%。


4. 尽量使用局部变量
调用方法时传递的参数以及在调用中创建的临时变量都保存在栈(Stack)中,速度较快。其他变量,如静态变量、实例变量等,都在堆(Heap)中创建,速度较慢。


5. 尽量处理好包装类型和基本类型两者的使用场所
虽然包装类型和基本类型在使用过程中是可以相互转换,但它们两者所产生的内存区域是完全不同的,基本类型数据产生和处理都在栈中处理,包装类型是对象,是在堆中产生实例。
在集合类对象,有对象方面需要的处理适用包装类型,其他的处理提倡使用基本类型。

6. 慎用synchronized,尽量减小synchronized的方法
都知道,实现同步是要很大的系统开销作为代价的,甚至可能造成死锁,所以尽量避免无谓的同步控制。synchronize方法被调用时,直接会把当前对象锁 了,在方法执行完之前其他线程无法调用当前对象的其他方法。所以synchronize的方法尽量小,并且应尽量使用方法同步代替代码块同步。

7. 尽量减少对变量的重复计算

for(int i=0;i<list.size();i++)
应该改为
for(int i=0,len=list.size();i<len;i++)
并且在循环中应该避免使用复杂的表达式,在循环中,循环条件会被反复计算,如果不使用复杂表达式,而使循环条件值不变的话,程序将会运行的更快。

8. 尽量确定StringBuffer的容量
StringBuffer 的构造器会创建一个默认大小(通常是16)的字符数组。在使用中,如果超出这个大小,就会重新分配内存,创建一个更大的数组,并将原先的数组复制过来,再 丢弃旧的数组。在大多数情况下,你可以在创建 StringBuffer的时候指定大小,这样就避免了在容量不够的时候自动增长,以提高性能。
如:StringBuffer buffer = new StringBuffer(1000); 


9. 尽量避免使用split
除非是必须的,否则应该避免使用split,split由于支持正则表达式,所以效率比较低,如果是频繁的几十,几百万的调用将会耗费大量资源,如果确实需 要频繁的调用split,可以考虑使用apache的StringUtils.split(string,char),频繁split的可以缓存结果。


10. 尽量使用System.arraycopy ()代替通过来循环复制数组
System.arraycopy() 要比通过循环来复制数组快的多




分享到:
评论

相关推荐

    java代码优化总结1.0版本.zip

    这份"java代码优化总结1.0版本.zip"资源可能包含了关于如何提升Java程序效率的各种策略、技巧和最佳实践。以下是根据标题和描述推测出的一些核心知识点: 1. **基础优化概念**:首先,优化涉及到理解程序的运行时...

    java代码优化总结1.0版本.7z

    在这个1.0版本的总结文档中,我们将会探讨一些核心的Java代码优化策略和技术,旨在帮助开发者编写更高效、更易于维护的代码。 首先,了解JVM(Java虚拟机)的工作原理至关重要。JVM通过即时编译(JIT)将字节码转换...

    Java代码优化细节总结

    代码优化,一个很重要的课题。可能有些人觉得没用,一些细小的地方有什么好修改的,改与不改对于代码的运行效率有什么影响呢?这个问题我是这么考虑的,像大海里面的鲸鱼一样,它吃一条小虾米有用吗?没用,但是,吃...

    35个Java代码性能优化总结

     代码优化,一个很重要的课题。可能有些人觉得没用,一些细小的地方有什么好修改的,改与不改对于代码的运行效率有什么影响呢?这个问题我是这么考虑的,像大海里面的鲸鱼一样,它吃一条小虾米有用吗?没用,但是...

    java代码优化细节总结1.0版本.7z

    这份"java代码优化细节总结1.0版本.7z"压缩包包含了一份详细的Java代码优化指南,适用于开发者在编写和优化Java程序时参考。以下是根据标题、描述以及压缩包内文件名称所归纳的一些核心知识点: 1. **对象创建与...

    java代码优化细节总结1.0版本.zip

    以下是对`java代码优化细节总结1.0版本`的一些核心知识点的阐述: 1. **避免冗余计算**:在Java编程中,如果一个值在多处被使用,应当将其存储在变量中,避免重复计算,提升执行速度。 2. **减少对象创建**:频繁...

    35个Java代码性能优化总结.pdf

    ### Java代码性能优化总结 Java代码性能优化是一个广泛的领域,涉及多个方面,包括但不限于内存使用、循环效率、算法优化、集合框架使用等。本总结旨在汇总35个常见的Java代码性能优化技巧。 #### 1. 使用final...

    java代码优化

    总结起来,Java代码优化是一个全面的过程,涉及到代码质量、设计模式、重构、内存管理、并发处理等多个方面。通过阅读和实践上述书籍中的知识,开发者可以不断提升自己的编程技能,编写出更高效、更易维护的Java代码...

    35 个 Java 代码性能优化总结

    ### 35个Java代码性能优化总结 #### 前言 代码优化是软件开发中的一个重要环节,尤其在Java这样的大型应用开发中更是至关重要。合理的优化不仅能够显著提高应用程序的性能,还能降低资源消耗,提升用户体验。本文将...

    JAVA代码规范及快捷键优化.docx

    以下是关于JAVA代码规范和快捷键优化的知识点总结: 一、JAVA代码规范 1. 空格规范:在编写JAVA代码时,需要遵守统一的空格规范,以使代码看上去清晰易读。例如,在数组初始化时,需要使用统一的空格格式。 2. ...

    Java编写的安卓系统优化软件源代码.rar

    总结来说,这款Java编写的安卓系统优化软件源代码,为我们提供了一个深入了解安卓系统优化技术的实践样本。通过对源代码的学习和研究,我们可以提升在安卓开发领域的技能,更好地应对性能优化和系统维护的挑战。

    java代码效率优化

    本文将针对给定文件中的内容进行详细解读,并结合实际经验总结出一系列Java代码效率优化的实用技巧。 #### 二、优化方法概述 根据给定文件的内容,我们可以将其分为以下几个主要方面: 1. **类与方法的final修饰*...

    eclipse开发性能优化、java代码性能优化

    ### Eclipse 开发性能优化与 Java 代码性能优化 在日常的软件开发过程中,尤其是在使用 Eclipse 进行 Android 开发时,经常会遇到 IDE 运行缓慢的情况。为了提高开发效率,本文将详细介绍 Eclipse 开发环境及 Java ...

    java代码重构经验总结

    ### Java代码重构经验总结 在软件开发过程中,代码重构是一项重要的技能,它旨在不改变代码外部行为的前提下,改进其内部结构,从而提升代码质量和可维护性。本文将深入探讨Java代码重构的关键点,涵盖重构原则、...

    Java代码注释率检查器.rar

    总结来说,"Java代码注释率检查器"是一个实用的工具,可以帮助Java开发者监控和提升代码的注释质量。通过分析代码中的注释数量,它可以帮助我们遵循最佳实践,使代码更易于理解和维护,从而提升整个项目的质量和效率...

    java代码细节总结1.0版本.zip

    本资料“java代码细节总结1.0版本.zip”是针对Java编程的一些关键知识点和最佳实践的详细概述,旨在帮助开发者提升代码质量和效率。以下是根据提供的文件名“java代码细节总结1.0版本.md”可能涵盖的一些核心Java...

    java 基础知识总结(经典)

    这篇“Java基础知识总结(经典)”涵盖了Java开发中的核心概念和重要知识点,旨在为初学者和有经验的开发者提供一个全面的回顾。以下是主要的学习点: 1. **Java环境配置**:在开始编程之前,必须安装Java ...

    Java性能优化技巧集锦

    总结,Java性能优化是一个全方位的过程,需要从代码编写、框架选择、资源配置等多个层面考虑。通过深入理解这些知识点并应用于实践中,可以显著提升Java应用程序的运行效率。在实际工作中,应结合具体项目需求和资源...

Global site tag (gtag.js) - Google Analytics