一、引用类型
java中存在4中引用类型,强引用,软引用,弱引用,虚引用。
1、强引用FinalReference。
这个关系是我们经常使用的赋值。特点是可以直接访问目标,jvm不会主动释放,可能会导致内存泄露。
2、软引用
第2强的引用类型,只有在jvm中堵使用率接近阙值的时候才会回收。如果内存足够,将一直使用。可以来实现对内存敏感的cache
3、弱引用
系统GC时,发现弱引用直接就回收。但是由于GC线程优先级低,不一定会立刻发现弱引用,所以这样弱应用也会持续一段时间。
软引用与弱引用很适合做可有可无的缓存数据,这样不会引起内存泄露。
4、虚引用
虚引用等于没有引用,开发用处不大。。
5、WeakHashMap
一个hashmap的实现类,里面元素采用弱引用可有有效的释放内存。但是如果key存在强引用,它将退化为HashMap。
二、异常
异常的逻辑没有任何优化,如果要使用最好放在循环外面。
二、局部变量
局部变量效率高于静态变量。
三、位预算
位预算要优化算术运算但是使用位运算必须添加注释。
四、switch
可以用数组来代替switch.
五、使用arrayCopy()
在复制数组的情况下可以用system.arraycopy();这个方法,因为这个方法是以个自然方法,可以有效的提高效率
六、I/O操作必须用buffer
OutputStream -- FileOutputStream -- BufferedOutputStream
InputStream -- FileInputStream -- BufferedInputStream
Writer -- FileWriter -- BufferedWriter
Reader -- FileReader -- BufferedWriter
七、静态方法
静态方法效率上要高于实例方法,而且不用生成类,在工具类必须使用。
分享到:
相关推荐
Java程序性能优化 笔记 脑图
通过阅读《Java游戏编程读书笔记》这本书,你可以深入了解这些概念并学习如何将它们应用到实际项目中。文档中的内容可能涵盖了Java游戏开发的基本原理、代码示例、最佳实践以及常见问题的解决方案。通过深入学习和...
### Java编程思想读书笔记 #### 一、Java与C++的区别及内存管理 在学习Java的过程中,我们常常会拿它与C++进行比较。这两门语言虽然有着相似之处,但也有许多不同点。 1. **内存管理:** - C++提供了更为底层的...
从标题“java核心思想读书笔记”和描述可以看出,这份资料是作者结合《Java核心思想》一书和其他网络资源整理而成,适合不同水平的Java学习者,特别是初学者和有经验的工程师。 1. **Java的设计目标** - 不同于...
《Java性能优化权威指南》读书笔记(脑图) 原图,看不清楚可以下载这个
【Java学习笔记Markdown版】是针对Java初学者和进阶者的一份详尽教程,以Markdown格式编写,便于阅读和整理。Markdown是一种轻量级的标记语言,它允许用户使用易读易写的纯文本格式编写文档,然后转换成结构化的HTML...
数据结构与算法分析是...这篇读书笔记不仅涵盖了理论知识,还结合Java语言特点进行了深入的探讨,对学习者来说是一份宝贵的资源。通过阅读和实践,开发者可以更好地理解和运用数据结构与算法,提升自己的编程技能。
《Java完美经典》读书笔记是Java开发者不可或缺的学习资源,它涵盖了Java编程的各个方面,旨在帮助读者深入理解Java语言,提升编程技巧。以下是对该书笔记的一些核心知识点的详细阐述: 1. **Java基础** - **变量...
在Android应用开发中,性能优化是一项至关重要的任务,它直接影响到用户的体验和应用程序的市场竞争力。"Android应用性能优化最佳实践"这本书深入探讨了如何提升Android应用的性能,以下是一些核心知识点的总结: 1...
10. **JVM原理**:虚拟机的工作原理,内存模型,垃圾收集机制,以及性能优化的相关知识。 11. **设计模式**:常见设计模式的介绍,如单例模式、工厂模式、观察者模式等,以及在实际项目中的应用。 12. **Java EE**...
同时,可能会涵盖JVM(Java虚拟机)的工作原理,包括内存管理、类加载机制、性能优化等方面,这对于理解和优化JAVA程序的运行效率极其重要。 最后,笔记还可能包含了实际项目开发中的经验分享,如MVC框架Spring的...
12. **JVM(Java虚拟机)**:了解JVM的工作原理,如类加载、内存管理、垃圾回收等,对于优化Java程序性能至关重要。 13. **单元测试与调试**:使用JUnit等工具进行代码测试,以及如何使用IDE的调试功能来定位和修复...
《Eclipse性能优化——<深度理解JVM>读书笔记》主要涵盖了如何利用Eclipse IDE进行Java应用程序的性能优化,以及深入理解JVM的工作原理。在本文中,我们将探讨Eclipse的性能调优策略,以及JVM内存管理和垃圾回收机制...
第五,JVM性能优化是Java开发者必须掌握的技能。笔记可能包括JVM的运行模式、类加载机制、方法区、类的生命周期,以及如何通过JProfiler、VisualVM等工具进行性能监控和调优。 第六,笔记可能还涉及到了Java网络...
通过阅读《Java JDK 7学习笔记》,你可以深入了解这些特性的具体使用和背后的设计理念,进一步提高你的Java编程技能。这份笔记不仅适合初学者,也对有经验的开发者有所帮助,因为它涵盖了从基础到高级的各种主题,是...
在内存管理和垃圾回收方面,书中有专门章节讲解Java的内存模型以及自动内存管理机制,解释了如何避免内存泄漏和理解引用类型,这对于优化程序性能和解决内存问题非常有帮助。 书中还详细阐述了异常处理,这是Java...
9. **性能优化**:内存泄漏检测、CPU性能分析、JProfiler等工具的使用。 10. **源码阅读**:学习和理解一些开源项目的源码,如Apache Commons、Guava等。 这份"java校招学习笔记"应该是一个全面的参考资料,帮助...
总的来说,基于Java的阅读器界面优化是一个综合性的任务,涉及界面设计原则、用户体验、文件解析、性能优化、事件处理和无障碍设计等多个方面。通过持续学习和实践,开发者可以构建出更加优秀的阅读器应用,满足不同...
通过阅读和理解这些框架的源码,开发者可以深入理解框架的工作原理,提高代码设计和优化的能力。 线程池是Java并发编程的重要组成部分,它通过复用已创建的线程来减少线程创建和销毁的开销。Java的ExecutorService...