java System类相关方法介绍与finalize方法区别
System类:
1. 获取当前系统时间:
public static long currentTimeMillis();
2垃圾回收:
public static void gc(); // 实际上就是调用Runtime.gc();
- 如果这些System.gc()前需要一些收尾工作,释放空间,可以覆写Object类中的 finalize方法:
protected void finalize() throws Throwable;
————计算程序执行计算时间:
package com.mldn;
public class TimeAcount
{
public static void main(String[] args)
{
long begin = System.currentTimeMillis(); // 获取当前系统时间;
String str = “”;
for (int i = 0; i < 5000; i++)
{
str += i;
}
long end = System.currentTimeMillis(); // 获取当前系统时间;
System.out.println(end – begin); // 计算程序执行时间:1486,1483,1466,…..
}
}
————- finalize方法:与System.gc():
package com.mldn;
class Person
{
private String name;
private int age;
public Person(String name, int age)
{
this.name = name;
this.age = age;
}
public String getName()
{
return this.name;
}
public int getAge()
{
return this.age;
}
public void finalize()
{
System.out.println(“垃圾回收前执行的收尾操作,表示对象空间将被销毁!”);
}
}
public class Finalize
{
public static void main(String[] args)
{
Person per = new Person(“zhangsan”, 99);
per = null; // 取消引用;
System.out.println(“强制垃圾回收!将回收未被使用的堆空间!同时调用收尾操作!”);
System.gc(); // 强制垃圾回收!将回收未被使用的堆空间
}
}
/*
administrator@xu-desktop:~$ java com.mldn.Finalize
强制垃圾回收!将回收未被使用的堆空间!同时调用收尾操作!
垃圾回收前执行的收尾操作,表示对象空间将被销毁!
*/
声明: 除非转自他站(如有侵权,请联系处理)外,本文采用 BY-NC-SA 协议进行授权 | 嗅谱网
转载请注明:转自《java System类相关方法介绍与finalize方法区别》
本文地址:http://www.xiupu.net/archives-185.html
关注公众号:
微信赞赏
支付宝赞赏