写程序,有些小地方,总觉得无所谓,小事情,慢不了多少……
软件一到了生产线上,这些小地方反映出来就是大问题了。
swing写的客户端,执行时间长了,就越来越慢,
明显感觉界面的刷新慢……
看了N久代码,发现是一个自定义的对话框,
用了xxxxDialog.getInstance(),看本意应该是单例模式,
可是,一看代码,getInstance()方法里new了一个对象,然后返回的。
这个对话框又没有释放掉……
工人执行任务几千次之后,可想而知,
修改后,立竿见影,好多了…… ================================================== String的replaceAll方法,后面第一个参数是一个正则表达式,
如果多次使用的话,最好用Pattern.compare一下,直接用正则表达式对象。
否则,每次replaceAll,都会临时创建一个正则对象。 =================================================== static变量,注意初始化顺序。
特别是用单例模式的时候,
private static XXX a = new XXX(); private static int a = 200;
private XXX(){ System.out.println(a); }
输出的是0,而不是200。 明白了吗? ==================================================
|