最近在做应用的性能优化,在review代码的过程中积累了一些规则和经验。做到这些规则的目的很简单,就是写出“优美”的代码来。
1、注释尽可能全面
对于方法的注释应该包含详细的入参和结果说明,有异常抛出的情况也要详细叙述;类的注释应该包含类的功能说明、作者和修改者。
2、多次使用的相同变量最好归纳成常量
多处使用的相同值的变量应该尽量归纳为一个常量,方便日后的维护。
3、尽量少的在循环中执行方法调用
尽量在循环中少做一些可避免的方法调用,这样可以节省方法栈的创建。例如:
for(int i=0;i<list.size();i++){
System.out.println(i);
}
可以修改为:
for(int i=0,size=list.size();i<size;i++){
System.out.println(i);
}
4、常量的定义可以放到接口中
在Java中,接口里只允许存在常量,因此把常量放到接口中声明就可以省去public static final这几个关键词。
5、ArrayList和LinkedList的选择
这个问题比较常见。通常程序员最好能够对list的使用场景做出评估,然后根据特性作出选择。ArrayList底层是使用数组实现的,因此随机读取数据会比LinkedList快很多,而LinkedList是使用链表实现的,新增和删除数据的速度比ArrayList快不少。
6、String,StringBuffer和StringBuilder
这个问题也比较常见。在进行字符串拼接处理的时候,String通常会产生多个对象,而且将多个值缓存到常量池中。例如:
String a="a";
String b="b";
a=a+b;
这种情况下jvm会产生"a","b","ab"三个对象。而且字符串拼接的性能也很低。因此通常需要做字符串处理的时候尽量采用StringBuffer和StringBuilder来。
7、包装类和基本类型的选择
在代码中,如果可以使用基本数据类型来做局部变量类型的话尽量使用基本数据类型,因为基本类型的变量是存放在栈中的,包装类的变量是在堆中,栈的操作速度比堆快很多。
8、尽早的将不再使用的变量引用赋给null
这样做可以帮助jvm更快的进行内存回收。当然很多人其实对这种做法并不感冒。
9、在finally块中对资源进行释放
典型的场景是使用io流的时候,不论是否出现异常最后都应该在finally中对流进行关闭。
10、在HashMap中使用一个Object作为key时要注意如何区分Object是否相同
在jdk的HashMap实现中,判断两个Object类型的key是否相同的标准是hashcode是否相同和equals方法的返回值。如果业务上需要对两个数据相同的内存对象当作不同的key存储到hashmap中就要对hashcode和equals方法进行覆盖。
分享到:
相关推荐
提高 Java 代码性能的各种技巧 在 Java 6, 7, 8 中,String.intern() 方法是一个重要的性能优化技术之一。字符串池是 Java 中的一个重要概念,它可以通过使用唯一的共享 String 对象来使用相同的值不同的地址表示...
Java 代码性能优化技巧总结 Java 代码性能优化是每个 Java 开发者都需要掌握的重要技能。以下是对 Java 代码性能优化的各种技巧的总结: 字符串池的实现 在 Java 中,字符串池(String Intern Pool)是通过使用...
总的来说,提高Java代码性能的一个策略是关注尾递归的优化,尤其是当递归深度较大时。开发者需要理解其JVM的行为,利用JIT编译器的动态优化能力,同时注意在编写递归代码时确保正确性和效率。此外,还可以通过其他...
Java代码性能问题检查计划及方案 在Java编程中,性能问题往往是开发者关注的重点。虽然Java语言自身具有高效、跨平台的特性,但程序的运行效率却更多地取决于开发者的设计和编码习惯。本方案旨在提供一个详细的检查...
Java代码优化是提升应用程序性能的关键步骤,尤其是在大型企业级应用或者高性能服务中。优化能够减少内存消耗,提高程序运行速度,降低CPU使用率,并改善整体的用户体验。在Java开发领域,有多种工具可以帮助开发者...
"高性能java代码优化建议"这一主题涵盖了众多资深开发者积累的实践经验,旨在帮助开发者编写出更高效、性能更强的代码。以下是一些关键的知识点: 1. **避免过度使用同步**:在多线程环境中,过多的同步可能导致...
本主题“代码性能Java比较”将深入探讨Java代码性能的各种方面,结合二十三种设计模式的实践应用,帮助开发者提升编程技巧。 首先,我们来谈谈Java代码性能的优化。Java性能优化涵盖了许多领域,如内存管理、线程...
在软件开发中,尤其是使用Java语言时,遵循良好的编码习惯对于编写可读性高、易于维护的代码至关重要。以下是一些关键的Java编码习惯: 1. **Eclipse源代码格式化**:Eclipse作为流行的Java IDE,提供了自动格式化...
PMD 是一个开源的静态代码分析工具,能够检查 Java 代码中的编码风格、命名约定、安全性、性能等方面的缺陷。PMD 提供了大量的规则和配置项,能够满足不同的需求和标准。 Jtest 是一个商业的静态代码分析工具,能够...
总的来说,“Java程序性能优化 让你的Java程序更快、更稳定”这本书将涵盖以上诸多方面,通过理论结合实际的示例代码,帮助读者深入理解Java性能优化的各个方面,从而写出更快、更稳定的Java程序。书中附带的源文件...
JavaParser是一个强大的开源库,主要用于解析、操作和生成Java源代码。这个压缩包中的内容可能包含了一系列使用JavaParser...通过深入学习和应用JavaParser,我们可以更好地理解和优化Java代码,提升软件的质量和性能。
提高Java性能的方法主要包括以下几个方面: 1. 程序设计:良好的设计是性能优化的基础。采用合适的设计模式和方法可以有效利用资源,如内存、CPU、缓存和多线程,构建高性能、高可扩展性的系统。设计阶段就应考虑到...
### Java代码性能优化总结 Java代码性能优化是一个广泛的领域,涉及多个方面,包括但不限于内存使用、循环效率、算法优化、集合框架使用等。本总结旨在汇总35个常见的Java代码性能优化技巧。 #### 1. 使用final...
第3章从代码层面介绍如何编写高性能的Java程序。第4章介绍了并行开发和如何通过多线程提高系统性能。第5章立足于JVM虚拟机层面,介绍如何通过设置合理的JVM参数提升Java程序的性能。第6章为工具篇,介绍了获取和监控...
《Java程序性能优化》这本书主要探讨了如何通过各种技术和策略来提高Java应用程序的性能。 ### 性能瓶颈分析 - **CPU使用率高**:程序执行时,某些部分可能过度消耗CPU资源,导致性能下降。 - **内存泄漏**:对象...
第3章从代码层面介绍如何编写高性能的Java程序。第4章介绍了并行开发和如何通过多线程提高系统性能。第5章立足于JVM虚拟机层面,介绍如何通过设置合理的JVM参数提升Java程序的性能。第6章为工具篇,介绍了获取和监控...
在代码层面,书中会讲解如何编写高效且无副作用的Java代码,包括避免过度使用同步、合理使用数据结构、优化循环和减少不必要的对象创建等。这些实践原则有助于编写出更健壮、性能更佳的程序。 另外,书中还涵盖了...
以下是一些关于如何提高Java代码效率的具体策略: 1. 使用`final`修饰符:将类声明为`final`可以防止子类继承,对于像`java.lang.String`这样的核心类,这样做可以避免方法被覆盖。此外,`final`方法会被编译器考虑...