java代码优化随笔(一)
来源:互联网 发布:java将双引号替换空格 编辑:程序博客网 时间:2024/06/12 11:37
一:不要盲目用自动拆装类
public static void main(String[] arg){
Long sum=0L;
for(int i=0;i<10000;i++){
sum=sum+i;
}
System.out.println(i);
}
这种写法,结果正确,但计算时间会比预计长,因为Long是自动装箱类型,不是基本类型,在相加时需要new Long(),而新建对象大大增加了计算时间
二:避免使用finalizer,优先级低,在处理数据多时,可能等待被终结的对象的增加速度比终结速度还快,导致程序死掉,其次处理效率低。
三:封装的主要原因是:促使模块独立,完成解耦,有利于并行开发。
四:养成检查参数的有效性的习惯
在大多数方法中参数值都有某些限制,比如不能是NULL,书写时要有在方法体前检查参数的习惯,这样错误的出现是可预知的;否则会有以下危险:
1:方法处理过程中失败,出现令人费解的异常;(比较严重,异常不好理解但能知道是哪里错了)
2:方法可以正常的返回,但出现错误的计算结果;(很严重,结果错误,没有异常无从分析错误来源,只能对相关代码逐步审查)
3:方法可以正常返回,但让某个对象处于破坏状态,在将来某个不确定的时候,在某个不相关的点引发错误(爆炸,这种情况认栽,选择重写可能在决策上更有效)
五:重载注意点:不能通过访问权限、返回类型、抛出的异常进行重载;
六:慎用可变参数:可变参数相对容易引起错误
static void run(int...s){
int sum=100;
for (int str : s) {
sum/=str;
}
System.out.println("结果为:"+sum);
}
例如这个例子,传参中假如有0程序就有错误
七:for-each和传统的for循环:尽量使用for-each,书写更简洁,在嵌套循环时候不容易出错
八:需要精确计算(货币)的时候不要使用float和double他们会缺失精度,请使用int,long,BigDecimal。
九:引用类型尽量声明成接口的:
ArrayList<User> list = new ArrayList<User>();//
List<User> list = new ArrayList<User>();//这种方式更加灵活
十:做后期优化维护时,尽量不要进行全局的优化
- java代码优化随笔(一)
- java代码优化编程(一)
- 每日随笔_代码优化
- java 代码随笔记录
- java 随笔记录(一)
- Java 代码细节与优化(一)
- Java代码优化系列(一)开篇立碑
- Android 应用性能优化(一)JAVA代码优化
- [Java]学习笔记,随笔【一】
- 随笔之java笔试一
- java 多线程随笔( 一)
- Android代码优化(一)
- 代码优化(一)
- 项目代码优化(一)
- 35 个 Java 代码性能优化总结(一)
- 35 个 Java 代码性能优化总结(一)
- Java虚拟机学习随笔(一)
- JAVA编程思想随笔(一)
- 计算机是如何进行引导的
- orcal数据泵导出导入
- 前端学习(十五)call 和 apply 的区别
- Ionic3 Running Command 运行失败解决方法
- Adaboost的简单实现
- java代码优化随笔(一)
- Android编程权威指南(第2版)—第12章挑战练习
- spring bean实现init/destory生命周期方法的三种方式
- 二、Nginx代理 Apache 下某一个工程
- ffmpeg推送AAC音频处理ADTS
- Spring配置DataSource
- JQuery学习之控制相关控件的隐藏
- 微分方程小记
- 【hdu 2544】最短路 (dijkstra算法模板题)