Java程序基本优化
1.尽量指定类的final修饰符,因为带有final修饰符的类是不可派生的。
2.尽量重用对象。
3.尽量使用局部变量。
4.不要重复初始化变量。
5.在Java+Oracle的应用系统开发中,Java中内嵌的SQL语句应尽量使用大写,以减轻Oracle解析器解析的负担。
6.在Java编程过程中进行数据库连接、I/O流操作时务必小心,使用完毕后应及时关闭以释放资源。
7.JVM(Java虚拟机)有自身的GC(垃圾回收机制),但并非十分机智。用户对象后手动设置成null.
8.在使用同步机制时,应尽量使用方法同步代替代码同步。
9.尽量减少对变量的重复计算。
10.尽量采用lazy loading 的策略,即在需要时才开始创建。
11.谨慎使用异常。
12.不要在循环中使用try-catch,放在最外层。
13.注意StringBuffer(表示可变的可写的字符串)的使用。设置合适的容量。
14.合理使用Java类java.util.Vector.一个Vector就是一个java.lang.Object实例的数组。
15.当复制大量数据时,使用System.arraycopy()命令。
16.尽量使用重构。
17.不适用new 关键字创建类实例。
18.谨慎使用乘法和除法。如某些乘法可以用移位代替。
19.在JSP网页关闭无用的会话。 <@page session = "false">
20.JDBC与I/O.
21.Servlet与内存使用。
22.使用缓冲标记。
23.选择合适的引用机制。如include指令和include动作。
24.及时清除不再需要的会话。
25.不要将数组声明为public static final;
26.HashMap的遍历效率。
27.Array数组和ArrayList的使用。
Java程序基本优化的更多相关文章
- Java程序性能优化技巧
Java程序性能优化技巧 多线程.集合.网络编程.内存优化.缓冲..spring.设计模式.软件工程.编程思想 1.生成对象时,合理分配空间和大小new ArrayList(100); 2.优化for ...
- 《Java程序性能优化:让你的Java程序更快、更稳定》
Java程序性能优化:让你的Java程序更快.更稳定, 卓越网更便宜,不错的书吧
- [JAVA] java程序性能优化
一.避免在循环条件中使用复杂表达式 在不做编译优化的情况下,在循环中,循环条件会被反复计算,如果不使用复杂表达式,而使循环条件值不变的话,程序将会运行的更快. 例子: import java.util ...
- java程序性能优化
一.避免在循环条件中使用复杂表达式 在不做编译优化的情况下,在循环中,循环条件会被反复计算,如果不使用复杂表达式,而使循环条件值不变的话,程序将会运行的更快. 例子: import java.util ...
- 《Java程序性能优化》学习笔记 设计优化
豆瓣读书:http://book.douban.com/subject/19969386/ 第一章 Java性能调优概述 1.性能的参考指标 执行时间: CPU时间: 内存分配: 磁盘吞吐量: 网络吞 ...
- 《Java程序性能优化》之设计优化
豆瓣读书:http://book.douban.com/subject/19969386/ 第一章 Java性能调优概述 1.性能的参考指标 执行时间: CPU时间: 内存分配: 磁盘吞吐量: 网络吞 ...
- Java程序性能优化之性能概述
性能的基本概念 一).什么叫程序的性能? 程序运行所需的内存和时间. 二).性能的表现形式: 1).执行速度: 程序的反应是否迅速,响应时间是否足够短. 2).启动时间:程序从运行到可以处理正常业务所 ...
- Java程序性能优化之缓冲优化
优化前的代码: package com; import javax.swing.*; import java.awt.*; /** * 使用Eclipse,右键Run As,Java Applet运行 ...
- Java程序性能优化——让你的java程序更快、更稳定
1.Java性能调优概述 1.1.Web服务器,响应时间.吞吐量是两个重要的性能参数. 1.2.程序性能的几个表现: 执行速度:程序的反映是否迅速,响应时间是否足够短 内存分配:分配是否合理,是否过多 ...
- Java程序性能优化Tip
本博客是阅读<java time and space performance tips>这本小书后整理的读书笔记性质博客,增加了几个测试代码,代码可以在此下载:java时空间性能优化测试代 ...
随机推荐
- 用xshell连接VMware虚拟机中安装的Centos7系统
首先要保证你安装的Centos7系统的网路适配器使用的桥接模式,这个模式允许你安装再虚拟机中的Centos系统有一个自己的ip地址. 然后再虚拟机中登录你的Centos系统,用ip addr命令查看你 ...
- Go之第三方日志库logrus使用
文章引用自 第三方日志库logrus使用 日志是程序中必不可少的一个环节,由于Go语言内置的日志库功能比较简洁,我们在实际开发中通常会选择使用第三方的日志库来进行开发.本文介绍了logrus这个日志库 ...
- Python jupuyter 的安装与使用(windows下)
1.win+R cmd 打开命令窗 2.pip install jupyter pip安装jupyter 3.安装好后 执行jupyter的启动命令: jupyter notebook --ip=0 ...
- Centos610快照克隆后网络配置
VMware中安装的Centos610快照并克隆后网络配置 1.网卡配置 vi /etc/sysconfig/network-scripts/ifcfg-eth0 DEVICE=eth0 HWADDR ...
- [JLOI2009]神秘的生物
题目链接 题目大意 给定一个\(n*n\)的矩阵,从其中选取恰好一个连通块,使选取的格子所对应的权值和最大. \(n\leq 9\) 解题思路 由于\(n\)特别小,考虑插头dp. 和一般的插头dp不 ...
- Catalyst 2960 重启?
在实际的网络环境中,交换机的各种问题层出不穷,这里我遇到一个案例.关于Cisco 2960 S 交换机重启的问题. 故障描述:有那么几台C2960S交换机总是随机的重启. 原因:从show ver来 ...
- c++ 读取、输出txt文件
下面这段话转自:https://blog.csdn.net/lightlater/article/details/6326338 关于文本文件的文件头 第一 ANSI文件的文件头为空,不需要处理: 第 ...
- 的aspnet_client文件夹
在早期,有一些asp.net组件是默认要调用(从客户端调用)服务器根(域名)下这个子目录里边的文件的. 不过如果你使用高版本的asp.net,那么全都从你的网站里调用了,因为asp.net有了更好地直 ...
- JavaScript中关于隐式转换的一些总结
JavaScript运算符中的隐式转换规律:一.递增递减运算符(前置.后置)1.如果包含的是有效数字字符串或者是有效浮点数字符串,则会将字符串转换(Number())为数值,再进行加减操作,返回值的类 ...
- Cake ZOJ - 3537
题目链接 本题也是区间dp三角剖分板子题,只不过加入了判断是否是凸包,计算顺序要用凸包顺序(凸包板) #include<bits/stdc++.h> using namespace std ...