零散知识及有意思的类方法
获取操作所有时间:
public static void main(String[] args) {
long start = System.currentTimeMillis();//开始前时间
String str = "";
for(int i = 0; i < 3000 ; i++) {
str += i;
}
long end = System.currentTimeMillis();//结束后时间
System.out.println(end - start);//计算操作所用时间单位毫秒
}
finalize及系统调用GC:
class Htl {
public Htl() {
System.out.println("今天一定吃到羊!");
}
@Override
protected void finalize() throws Throwable {//复写object方法,执行对象回收前的收尾工作
System.out.println("我还会回来的");
throw new Exception("111");
}
}
public class MySystem {
public static void main(String[] args) {
Htl htl = new Htl();
htl = null;
System.gc();//手动执行垃圾回收
}
}
问题:final,finally,finalize的区别
final:关键字,声明的类不能被继承,声明的方法,不能被复写,声明的变量不能被改变;
finally:关键字,异常处理统一接口,即无论异常是否处理都执行,一般用作资源的释放与回收;
finalize:方法,object定义的方法(protected void finalize() throws Throwable)处理对象销毁的收尾工作;