Effective Java 学习笔记 (7)
Finalizer 不可计划的,也是危险的,一般也是不必要的. 不能在finalizer中放任何与依赖时间相关的操作,因为你不知道它什么时候被执行. 比如在finalizer中关闭文件的做法就是错误的, 根据JVM的实现方式不同,有可能导致打开的文件数过多而无法再打开文件. 也不能在finalizer中改变状态,如给数据库解锁等. finalizer还能带来严重的性能问题, 显示的调用的终止函数可以采用try -finally的语句 当然,合法的使用finalizer有两种情况: 一种是做为最后的一道关卡,检测用户是否有没有被释放的资源,如果有则释放它,并打印出警告. 虽然不提倡在finalizer中释放资源,但晚释放总比不释放好(beter later than never) 还一种合法使用就是在使用 native方法的时候. 要注意,finallizer没有承继关系,在子类中必须显示调用父类中的函数.
相关文档:
自从学习Java以来已经一年有余了,对Java还只是初阶段的了解,都怪在学校的时候贪玩没有有效的利用时间,现在在一个培训学校学习Java,现在就要做项目了还是什么都不懂,还好有Csdn。
在Csdn的日子里叫我找到了家的感觉,得到了很 ......
Ubuntu Linux Install Sun Java Development Kit ( JDK ) and Java Runtime Environment ( JRE )
by Vivek Gite
Q.
How do I install Sun
Java Development Kit (JDK) and Java Runtime Environment (JRE) under
Ubuntu Linux? It appears that there are multiple JRE installed by
default under Ubuntu. ......
来源:http://www.ej38.com/showinfo/java-132636.html
使用jar包:
commons-pool-1.5.3.jar,tomcat-naming-common.jar,commons-pool-1.5.3-bin.zip,commons-dbcp.jar
注意:jdbc 驱动要与数据库兼容.
package test.comm;
import java.sql.Connection;
import java.sql.SQLException;
import java.u ......
二分查找法和线性查找法
二分查找法是一种比普通线性查找快得多的查找算法,但只适用于有序集合当中。拿升序排序后的整型数组来说,二分法具体的实现原理是:先把待查找数a与数组中间的那个数x对比,如果相等,直接返回x的索引;如果a大于x,则排除掉数组的前面一半(包括x),接着拿a与剩下一半数组中间的那个数x对比,如 ......