Java学习总结:33(System类)
System类
System类的方法
No. | 方法 | 类型 | 描述 |
---|---|---|---|
1 | public static void arraycopy(Object src,int srcPos,Object dest,int destPos,int length) | 普通 | 数组粘贴操作 |
2 | public static long currentTimeMillis() | 普通 | 取得当前的日期时间,以long型数据返回 |
3 | public static void gc() | 普通 | 垃圾收集 |
currentTimeMillis()方法
例:观察currentTimeMillis()方法的使用
package Project.Study.SystemClass;import java.text.SimpleDateFormat;
import java.util.Date;public class Test1 {public static void main(String[]args){//取得开始时间long start=System.currentTimeMillis(); //currentTimeMillis()返回以毫秒为单位的当前时间String str="";for(int x=0;x<30000;x++){str+=x;}long end=System.currentTimeMillis(); //currentTimeMillis()返回以毫秒为单位的当前时间System.out.println("开始时间:"+start);SimpleDateFormat start1 = new SimpleDateFormat("yyyy年-MM月dd日-HH时mm分ss秒");Date date1 = new Date(start);System.out.println(start1.format(date1));System.out.println("结束时间:"+end);SimpleDateFormat end2 = new SimpleDateFormat("yyyy年-MM月dd日-HH时mm分ss秒");Date date2 = new Date(end);System.out.println(end2.format(date2));System.out.println("本次操作所花费的时间:"+(end-start));}
}
//结果:
//开始时间:1585573645695
//2020年-03月30日-21时07分25秒
//结束时间:1585573646162
//2020年-03月30日-21时07分26秒
//本次操作所花费的时间:467(毫秒)
System类的gc()方法
该gc()方法不算一个新的操作方法,它是间接调用了Runtime类中的gc()方法,不表示一个重写的方法。所以调用System.gc()和调用Runtime.getRuntime().gc()最终的效果是完全一样的。
对象回收
如果要产生一个对象,可以通过构造方法处理一些对象产生时的操作,同样当一个对象被回收时,我们也可以做一些收尾工作,可以通过finalize()方法实现,此方法由Object类定义。 对象回收方法如下:
protected void finalize() throws Throwable
例:对象回收操作
package Project.Study.SystemClass;class Human{public Human(){System.out.println("一个健康的孩子出生了");}protected void finalize()throws Throwable{ //覆写Object类方法System.out.println("修仙活了200年,到时候了");throw new Exception("此处即使抛出异常对象也不会产生任何影响");}
}
public class Test2 {public static void main(String[]args){Human men=new Human(); //实例化新的对象men=null; //产生垃圾System.gc(); //手工处理垃圾收集}
}
//结果:
//一个健康的孩子出生了
//修仙活了200年,到时候了
通过上程序我们可以看到,当一个对象的堆内存空间即将被回收后将自动调用finalize()方法,这样就可以进行一些对象回收前的收尾工作。并且此方法即使产生任何异常或错误,也不会影响程序的正常执行。
Java学习总结:33(System类)相关推荐
- java工具类应该抛异常吗,java学习阶段一 工具类(异常)
java学习阶段一 工具类(异常) 介绍 异常:运行期间出现的错误 背离程序本身意图的表现 基本知识 异常的分类 根类 Throwable Error 程序无法处理的错误 表示运行应用程序中教严重的问 ...
- Java学习笔记Day06 工具类及常用算法
第六章 工具类及常用算法 文章目录 第六章 工具类及常用算法 Java语言基础类 Java基础类库 Object类 概述 toString方法 方法摘要 覆盖重写 equals方法 方法摘要 默认地址 ...
- java学习笔记7--抽象类与抽象方法
接着前面的学习: java学习笔记6--类的继承.Object类 java学习笔记5--类的方法 java学习笔记4--类与对象的基本概念(2) java学习笔记3--类与对象的基本概念(1) jav ...
- Java学习总结3——枚举类和反射机制
Java枚举类和反射机制 一.Java枚举类(Enum): 在某些情况下,一个类的对象是有限且固定的,对于这种对象的实例有限且固定的类,在 Java 中被称为枚举类(Enum):枚举类是为了提高代码可 ...
- Java学习笔记2——常用类
目录 1 内部类 1.1 成员内部类 1.2 静态内部类 1.3 局部内部类 1.4 匿名内部类 2 Object类 2.1 getClass()方法 2.2 hashCode()方法 2.3 toS ...
- 【Java学习】Font字体类的用法介绍
一.Font类简介 Font类是用于设置图形用户界面上的字体样式的,包括字体类型(例如宋体.仿宋.Times New Roman等).字体风格(例如斜体字.加粗等).以及字号大小. 二.Font类的引 ...
- JAVA学习6-集合工具类、流
51.Collections集合工具类 除了重写compareTo方法比较TreeSet元素之外,还可以用比较器方式: 比较器实现java.util.comparator接口(Comparable是j ...
- JAVA学习笔记33——模拟实现HandSet+数据存储综合练习(javabean版+容器板)
最近在看JAVA教学的视频,觉得老师讲的很好,同时借用源代码还有笔记来撰写本系列博客,记录自己的学习内容,同时也供看到的人学习. 本篇第一个内容是模拟实现HandSet,其实这个模拟和之前的相比简陋了 ...
- 【java学习】常用实体类--String、StringBuffer\StringTokenizer
文章目录 参数传递 String String类有两个常用构造方法: 引用String常量 String类的常用方法 StringBuffer和StringBuilder StringBuilder中 ...
最新文章
- 解决Jenkins的job启动tomcat时会在job结束时关闭问题
- 异步执行线程的两种方法
- Android 系统(274)---Anroid5.0以上进程保活方案(亲测可自行调起被杀死的app)
- vue3中setup()函数的使用一
- 备考2个月如何一次性通过信息系统项目管理师
- 项目管理软件之禅道和JIRA的共同点与区别
- Unity 3D项目-Adventure of JM Robot
- 从零到大神,135排版训练营给你实实在在的排版!
- 笔记本电脑开机白屏怎么处理
- 让连续的英文或数字自动换行
- 不露脸也可以做自媒体短视频,简单罗列几个易上手的领域
- 【历史上的今天】9 月 6 日:Facebook 收购 Instagram;华为发布 5G 芯片;惠普并购康柏
- SPI—读写串行FLASH(时序中的无关项)
- Py西游攻关之迭代器生成器
- [转]频谱、幅度谱、功率谱和能量谱
- 我的人生应当怎么度过
- 正式的介绍「Mutt」:命令行的邮件大师 (一文详解)
- java定义接口必用关键字_Java中定义接口的关键字是什么
- 中国教育和科研计算机网络是,重大应用—热烈庆祝中国教育和科研计算机网CERNET建设20周年—中国教育和科研计算机网CERNET...
- 调整oracle scn,ORACLE数据库中使用ADJUST_SCN增进SCN及案例模拟
热门文章
- Vue在Element UI下使用富文本框插件quill-editor(我个人不推荐用这个复杂的富文本插件)
- centos下设置node.js开机启动(并且启动自己的项目js)
- libcurl 编程进度条和range请求源码示例
- 调试视频网页js脚本的方法
- 设计模式:简单工厂、工厂方法、抽象工厂之小结与区别
- 设计模式 之美 -- 代理模式
- C语言 #ifndef 引起的redefinition of xxx 问题解决
- C语言网络编程:close或者shutdown断开通信连接
- on-my-zsh git 仓库下运行卡顿
- 转:[大数据竞赛]夺冠感言:走进业务,提升对世界的认知能力