当前位置: 首页 > 编程日记 > 正文

Java学习总结:33(System类)

System类

System类的方法

No.方法类型描述
1public static void arraycopy(Object src,int srcPos,Object dest,int destPos,int length)普通数组粘贴操作
2public static long currentTimeMillis()普通取得当前的日期时间,以long型数据返回
3public 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()方法,这样就可以进行一些对象回收前的收尾工作。并且此方法即使产生任何异常或错误,也不会影响程序的正常执行。

相关文章:

重磅推出:AutoProject Studio 自动化项目生成器

AutoProject Studio 自动化项目生成器 核心架构图 AutoProject Studio 自动化项目生成器是一款基于C#.Net Framework 4.0为平台自主研发、专为软件设计、开发、管理的自动化项目(代码)生成器&#xff0c;同时也是一个智能化软件开发平台与超高效率、超低成本的最优解决方案。 该…

2022-2028年中国基因工程药物产业市场研究及前瞻分析报告

【报告类型】产业研究 【报告价格】4500起 【出版时间】即时更新&#xff08;交付时间约3个工作日&#xff09; 【发布机构】智研瞻产业研究院 【报告格式】PDF版 本报告介绍了中国基因工程药物行业市场行业相关概述、中国基因工程药物行业市场行业运行环境、分析了中国基…

Perl 模块安装遇到的问题解决办法

2019独角兽企业重金招聘Python工程师标准>>> 问题1&#xff1a;Warning (usually harmless): YAML not installed, will not store persistent state 解决办法&#xff1a; 官网下载&#xff1a;http://search.cpan.org/~mstrout/YAML-0.84/lib/YAML.pm 上传安装…

如何终止一个正在动态执行的命令

比如&#xff0c;我们在终端输入了top 那么它就会一直动态的运行下去。 我们怎样让它终止呢&#xff1f; 很简单&#xff0c;Ctrl C就可以了。 另外&#xff0c;还有一种方法&#xff0c; 直接按一下q也可以退出。 它们两个的效果是一样的。转载于:https://www.cnblogs.com/o8l…

绘制你的世界:探索构图和真实的深度感

MP4 |视频:h264&#xff0c;1920 x 1080 |音频:AAC&#xff0c;48 KHz&#xff0c;2 Ch 语言&#xff1a;英语中英文字幕&#xff08;根据原英文字幕机译更准确&#xff09;| 2h 24m |大小解压后:3.2 GB 勾画你的世界不是关于天赋&#xff0c;而是关于任何人都可以学习的原则和…

Java学习总结:34(对象克隆)

对象克隆 对象克隆就是对对象的复制操作&#xff0c;在Object类中存在一个clone()方法用于对象的克隆操作。该方法如下&#xff1a; protected Object clone() throws CloneNotSupportedException&#xff1b;我们注意到&#xff1a; 1.此方法使用了protected访问权限&#x…

win7下的IP-主机名映射

今天学了个技巧&#xff0c;win7下有个目录&#xff1a;C:\Windows\System32\drivers\etc该目录下有个文件&#xff1a;hosts在这个文件里面我们可以映射IP-主机名&#xff1a;127.0.0.1 localhost........格式为&#xff1a;IP空格主机名这样我们就可以用主机名代替IP了。转载…

Spring AOP + Redis解决重复提交的问题

Spring AOP Redis解决重复提交的问题 用户在点击操作的时候&#xff0c;可能会连续点击多次&#xff0c;虽然前端可以通过设置按钮的disable的属性来控制按钮不可连续点击&#xff0c;但是如果别人拿到请求进行模拟&#xff0c;依然会出现问题&#xff0c;项目是用JWT进行认证…

转:Flash 插件面板 DragonBonesDesignPanel 的绿色安装方法

最近在cocos2d-js下捣腾Dragonbones。转一个文章&#xff0c;大家可以参考安装Dragonbones。关于这个Dragonbones&#xff0c;5月份的时候还用得好好的&#xff0c;cocos2d-js还能妥妥的加载。最近就不行了&#xff0c;原来默默的升级了。还是得找回原来的2.0版本&#xff0c;后…

任务18:控制反转

控制反转 实现你的依赖&#xff0c;采用什么依赖&#xff0c;不由你自己决定&#xff0c;这个控制交给IOC容器。 这里所有的实现都不由你自己决定&#xff0c;我们只需要传给你就可以了。谁来传呢&#xff1f;容器来传给他 内存的Repository&#xff0c;这里实现的比较简单。 这…

Quixel megascans模型材质贴图合集包

Quixel megascans是一个在线高分辨率扫描模型和贴图库&#xff0c;一致的PBR校准的表面&#xff0c;植被&#xff0c;和三维扫描模型&#xff0c;还包括用于管理的桌面应用、混合和输出你的扫描数据的程序。它的产品已经与游戏和电影工作室合作。 quixel megascans可以帮助您创…

Java学习总结:35(数字操作类)

Java的数字操作类 一.Math类 Math类是一个专门用来进行数学计算的操作类&#xff0c;它提供了一系列的数学计算方法。在Math类里面提供的一切方法都是static型方法&#xff0c;所以可以直接由类名称进行调用。 例&#xff1a;观察四舍五入操作 package Project.Study.MathC…

STL笔记(5)条款49:学习破解有关STL的编译器诊断信息

STL笔记&#xff08;5&#xff09;条款49&#xff1a;学习破解有关STL的编译器诊断信息 条款49&#xff1a;学习破解有关STL的编译器诊断信息 用一个特定的大小定义一个vector是完全合法的&#xff0c; vector<int> v(10); // 建立一个大小为10的vector而string在很多…

执子之手,与子偕老。你同意么?

(1):5岁的时候&#xff0c;我说我爱你。你歪着脑袋&#xff0c;眨着水晶般的大眼睛&#xff0c;疑惑地问我&#xff1a;“什么意思呀&#xff1f;” (2):15岁的时候&#xff0c;我说:"我爱你".你的脸红得像火烧云&#xff0c;头深深地低着&#xff0c;摆弄著衣襟&…

34种墨西哥植物模型 Globe Plants – Bundle 34 Mexican Plants

Globe Plants Bundle 34墨西哥植物(3D模型)包括15种3D树木、灌木和肉质植物&#xff0c;用于南美洲的风景、住宅、花园和一般景观美化目的&#xff0c;特别是墨西哥&#xff0c;具有85种独特的照片逼真质量的3D植物模型&#xff0c;具有多种形式&#xff0c;可用于您的许多场景…

Java学习总结:36(日期处理类)

日期处理类 Date类 Date类常用方法 No.方法类型描述1public Date()构造实例化Date类对象2public Date(long date)构造将数字变为Date类对象&#xff0c;long为日期时间数据3public long getTime()普通将当前的日期时间变为long型 例&#xff1a;取得当前的日期时间 package…

最强的篮球队和马尔可夫模型

打篮球经常遇到这种情况&#xff0c;11个人&#xff0c;分4、4、3共三套&#xff0c;一群人少时间玩&#xff0c;在一个失败的团队的人下阵来填补空缺。因此&#xff0c;我认为&#xff0c;&#xff0c;会不会出现一个最强组合&#xff0c;使得这4个人一直赢比赛呢&#xff1f;…

1677: [Usaco2005 Jan]Sumsets 求和

1677: [Usaco2005 Jan]Sumsets 求和 Time Limit: 5 Sec Memory Limit: 64 MBSubmit: 626 Solved: 348[Submit][Status]Description Farmer John commanded his cows to search for different sets of numbers that sum to a given number. The cows use only numbers that ar…

通过CPAN安装Perl模块

第一步&#xff0c;进入CPAN shell&#xff1a; sudo perl -MCPAN -e shell 第一次运行会问你一些问题&#xff0c;一般来说缺省答案就好 第二步&#xff0c;执行安装程序&#xff0c;例如安装LWP:UserAgent cpan>install LWP:UserAgent 还有一个二合一的命令&#xff0c;效…

Python3和Raspberry Pi最全面最直接的课程

在一门课程中学习Python 3基础知识、高级Python、科学Python、Raspberry Pi、硬件和物联网项目 教程获取&#xff1a;Python3和Raspberry Pi最全面最直接的课程 – 云桥网络-CG技术学习平台 你会学到: Python 3基础 Python 3高级概念 Raspberry Pi的设置和使用 Scientific Py…

Java学习总结:37(比较器)

比较器 Arrays类 No.方法类型描述1public static boolean equals(int [] a,int [] a2)普通判断两个数组是否相等&#xff0c;此方法被重载多次&#xff0c;可以判断各种数据类型的数组2public static void fill(int [] a,int val)普通将指定内容填充到数组中&#xff0c;此方…

探究rh6上mysql5.6的主从、半同步、GTID多线程、SSL认证主从复制

http://407711169.blog.51cto.com/6616996/1203973/转载于:https://www.cnblogs.com/zengkefu/p/5042351.html

文字转语音(jacob)

近期项目中出现在离线情况下文字转语音的需求 经过尝试发现jacob还不错 注&#xff1a;只适用于windows系统环境 以下为开发记录&#xff1a; 1.pom.xml中引入jacob.jar <dependency><groupId>com.hynnet</groupId><artifactId>jacob</artifactId&…

log4j配置说明

2019独角兽企业重金招聘Python工程师标准>>> 一.参数意义说明 输出级别的种类 ERROR、WARN、INFO、DEBUG ERROR 为严重错误 主要是程序的错误 WARN 为一般警告&#xff0c;比如session丢失 INFO 为一般要显示的信息&#xff0c;比如登录登出 DEBUG 为程序的调试信息…

Python 无法安装PyAudio问题

一、错误与原因 在Windows上没有用于Python 3.7的轮子&#xff08;预构建包&#xff09;&#xff08;有一个用于Python 2.7和3.4到3.6&#xff09;&#xff0c;因此需要在PC上准备构建环境以使用此包。因为有些软件包很难在Windows上构建&#xff0c;所以找到3.7的轮子更容易一…

7-4 水仙花数

7-4 水仙花数 水仙花数是指一个N位正整数&#xff08;N≥3&#xff09;&#xff0c;它的每个位上的数字的N次幂之和等于它本身。例如&#xff1a;153135333。本题要求编写程序,计算所有N位水仙花数。 输入格式: 输入在一行中给出一个正整数N&#xff08;3≤N≤7&#xff09;。…

Unreal Engine4 可视化虚拟现实全流程学习教程

课程目标&#xff1a; 这是一套专门为设计院&#xff0c;三维动画公司、效果图公司、景观规划公司、以及有志于进入这些行业创业的公司和人们量身定制的一套虚拟漫游高级教材。 在这套教学里面&#xff0c;我们能够从头开始了解到一个效果图级别的虚拟漫游是怎么制作出来的&…

用python的numpy作线性拟合、多项式拟合、对数拟合

转自&#xff1a;http://blog.itpub.net/12199764/viewspace-1743145/ 项目中有涉及趋势预测的工作&#xff0c;整理一下这3种拟合方法&#xff1a;1、线性拟合-使用mathimport mathdef linefit(x , y): N float(len(x)) sx,sy,sxx,syy,sxy0,0,0,0,0 for i in range(…

Java中的简单工厂模式(转)

Java中的简单工厂模式 举两个例子以快速明白Java中的简单工厂模式&#xff1a;女娲抟土造人话说&#xff1a;“天地开辟&#xff0c;未有人民&#xff0c;女娲抟土为人。”女娲需要用土造出一个个的人&#xff0c;但在女娲造出人之前&#xff0c;人的概念只存在于女娲的思想里面…

Math.toRadians()与 Math.toDegrees()方法介绍

strictfp 的意思是FP-strict,也就是说精确浮点的意思。在Java虚拟机进行浮点运算时,如果没有指定strictfp关键字时,Java的编译器以及运 行环境在对浮点运算的表达式是采取一种近似于我行我素的行为来完成这些操作,以致于得到的结果往往无法令你满意。因此如果你想让你的浮点运算更加精确, 而且不会因为不同的硬件平台所执行的结果不一致的话,那就请用关键字strictfp。如果你想让你的浮点运算更加精确,而且不会因为不同的硬件平台所执行的结果不一致的话,可以用关键字strictfp.