System用法详细解析

2023-11-16

System类代表系统,系统级的很多属性和控制方法都放置在该类的内部。该类位于java.lang包。
由于该类的构造方法是private的,所以无法创建该类的对象,也就是无法实例化该类。其内部的成员变量和成员方法都是static的
**.**标准输入输出, 如out、in、err
**.**外部定义的属性和环境变量的访问,如getenv()/setenv()和getProperties()/setProperties()
**.**加载文件和类库的方法,如load()和loadLibrary()、
**.**快速拷贝数组的方法:arraycopy()
**.**jvm操作:如gc()、runFinalization()、exit(),该部分并未在源码的java doc中提到,可能因为本身不建议主动调用吧。而且这几个方法都仅仅是Runtime.getRuntime()的调用,两者没有区别
**.**获取时间方法:System.nanoTime 和 System.currentTimeMillis
System类中提供了一些系统级的操作方法,这些方法实现的功能分别如下:

常见的用法有以下几种:

**1. 表示时间,**通常用来计算程序或者循环使用的时间,比较精确

long currentTimeMillis = System.currentTimeMillis();
	//返回当前时间,类型为long
	System.out.println(currentTimeMillis);//1550482075169
	使用该方法获得的时间不够直观,但是却很方便时间的计算。例如,计算程序运行需要的时间则可以使用如下的代码:
long start = System. currentTimeMillis();
for(int i = 0;i < 100000000;i++){
int a = 0;
}
long end = System. currentTimeMillis();
long time = end – start;

则这里变量time的值就代表该代码中间的for循环执行需要的毫秒数,使用这种方式可以测试不同算法的程序的执行效率高低,也可以用于后期线程控制时的精确延时实现。
2. 复制数组,性能比循环好

	

```java
	使用示例:
int[] a = {1,2,3,4};
int[] b = new int[5];
System.arraycopy(a,1,b,3,2);
该代码的作用是将数组a中,从下标为1开始,复制到数组b从下标3开始的位置,总共复制2个。也就是将a[1]复制给b[3],将a[2]复制给b[4],这样经过复制以后数组a中的值不发生变化,而数组b中的值将变成{0,0,0,2,3}。

3. 请求系统垃圾回收,至于什么时候回收我们控制不了

System.gc();

4. 获取系统中对应的key的值

String version = System.getProperty("java.version");//1.8.0_101
	String home = System.getProperty("java.home");//D:\jdk1.8.0_101\jre
	String osName = System.getProperty("os.name");//Windows 10
	String osVersion = System.getProperty("os.version");//10.0
	String userName = System.getProperty("user.name");//18716
	String userHome = System.getProperty("user.home");//C:\Users\18716
	String userDir = System.getProperty("user.dir");//D:\yxworkspace\YxYun-YxYunApiTplForYw

5. 获取环境变量

  System.getenv()

6、exit方法

public static void exit(int status)

该方法的作用是退出程序。其中status的值为0代表正常退出,非零代表异常退出。使用该方法可以在图形界面编程中实现程序的退出功能等。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

System用法详细解析 的相关文章

  • Grid 布局实现九宫格图片动画

    前言 Grid 布局实现九宫格 background position设置背景图像起始位置 速速来Get吧 文末分享源代码 记得点赞 关注 收藏 1 实现效果 2 实现步骤 定义css变量 九宫格中每个宫格的长 宽为w 宫格之间的间距为ga
  • STL容器的线程安全

    众所周知 STL容器不是线程安全的 对于vector 即使写方 生产者 是单线程写入 但是并发读的时候 由于潜在的内存重新申请和对象复制问题 会导致读方 消费者 的迭代器失效 实际表现也就是招致了core dump 另外一种情况 如果是多个
  • firefox os_如何在电视上测试Firefox OS应用

    firefox os One of my responsibilities in my new role in Partner Engineering at Mozilla is testing HTML5 powered apps and
  • 解决git中出现的“bash syntax error near unexpected token ’(‘”错误

    今天来分享一篇关于我在git使用过程中出现的一个错误 错误信息 bash syntax error near unexpected token 翻译过来就是提示我在 这里有错误 而这个错误是我在使用git commit提交时候产生的 我当时
  • 4. Docker 构建镜像

    Docker 构建镜像 docker制作镜像通常是通过两种方式来实现的 第一种是通过容器的 commit 第二种是通过 Buildfile来实现的 docker commit 打包镜像 容器在运行过程中我们难免会做一些修改 比如运行的mys
  • 程序框架---缩进(Python)

    缩进 类定义 函数定义 选择结构 循环结构 with块 行尾的冒号表示缩进的开始 python程序是依靠代码块的缩进来体现代码之间的逻辑关系的 缩进结束就表示一个代码块结束了 同一级别代码块的缩进量必须相同 一般而言 以4个空格或一个TAB
  • OLED透明屏:在广告领域中的应用,为品牌注入更强的视觉冲击

    OLED透明屏作为一项引人注目的技术创新 其独特的透明度和高清晰度为各行各业带来了全新的展示和创意空间 本文将详细介绍其透明度 高对比度 超薄柔性设计以及强大的颜色表现力 并探讨其在零售 汽车和建筑等领域的应用前景 一 透明度 开启全新的透
  • 聊透spring @Configuration配置类

    本章节我们来探索Spring中一个常用的注解 Configuration 我们先来了解一下该注解的作用是 用来定义当前类为配置类 那啥是配置类啊 有啥用啊 这个我们得结合实际使用场景来说 通常情况下 加了 Configuration的配置类
  • 机器学习——决策树(Decision Trees)

    决策树 决策树是机器学习中一种最为常见的算法 顾名思义 决策树是基于树结构来进行决策的 这恰是人类在面对决策问题时一种很自然的处理机制 决策树的生成算法可以说是信息论的一种应用 但它其实只用到了信息论中的一小部分思想 因此对信息论有个基础性
  • Python系列教程-目录

    转载至 http www cricode com 3086 html Python初级教程 Python快速教程 手册 Python基础01 Hello World Python基础02 基本数据类型 Python基础03 序列 Pytho

随机推荐

  • CSS 之层叠规则(权级、权重、顺序)详解

    文章目录 参考 描述 定义 层叠 层叠与冲突 规则 权重 优先级 权重值的叠加 顺序 权级 权级 层叠规则的运用 顺序 尾声 参考 项目 描述 MDN WEB Docs 优先级 Amily mo 令人烦恼的css选择器权值问题 Amily
  • 《TCP/IP网络编程》--基于TCP实现字符串对话和文件传输

    1 基于TCP实现字符串对话 主要需求 服务器端和客户端各传递 1 次字符串 基于 TCP 协议 传递字符串前先以 4 字节整数型方式传递字符串长度 剩余部分为字符串数据 注 下面的代码基于 Windows 系统实现 1 1 服务器端 gc
  • Java中实现ftp下载文件至本地(详细)

    Java中实现ftp下载文件至本地 详细 欢迎关注蚕豆公众号 不定时分享技术 同时欢迎加入蚕豆技术群哦 扫描公众号点击关于作者加群 2020 09 13 今天记录一下java中实现ftp下载文件至本地的功能模块 同此与大家交流分享有什么不对
  • js每日定时请求接口

    需求是每日十点请求一次接口 初始方法是写一个一分钟的轮询 定时查询系统时间 如果时间为10点就执行请求函数 但是考虑这样太浪费资源 在师傅的帮助下找到了一个更优的方法 计算当前时间和目标时间的时间间隔 如果超过 则设置定时查询的时间间隔为距
  • 线段树合并例题

    https www luogu com cn problem P3224 1 永无乡 题意 给 n 个岛屿 每个岛有一个标号 初始修有 m 条路 有两个操作 操作1 为 给两个岛屿之间修路 操作2为求出 所有能从当前岛屿到达的岛 中标号第k
  • shell脚本之if多分支和case分支语句

    文章目录 一 多分支if语句 二 case分支语句 三 实操 3 1 系统控制服务脚本 控制服务的启动 重启 停止 3 2 根据学生的成绩 判断优秀 良好 和不及格几个等级 3 3 删除家目录 3 4 剪刀石头布 电脑与人 3 5 case
  • 软件测试从业人员学历和专业分布情况

    随着 十四五 规划对科技创新提出了更迫切的要求 国内人工智能 AI 物联网 大数据 云计算等IT产业得到了迅速发展 可是现阶段 我国软件测试基础人才不足 已成为制约我国软件产业发展的瓶颈 据国家权威部门统计 中国软件测试人才缺口近40万 并
  • 华为手机连电脑_华为手机也能连苹果电脑!文件互传超方便~

    每个人手机里 都存了许多回忆 有人会珍藏很多难忘的影像 有人会保存甜蜜或珍贵的聊天记录 也有人小心翼翼地保管着自己的通讯录 俗话说 未雨绸缪才能有备无患 为防止手机里的数据丢失 做好备份实在是太有必要了 今天花部长就来给大家讲一讲 华为 荣
  • jsp自定义tag标签

    首先定义use tag 存放目录在 WEB INF tags use tag div p This is a test p br div
  • JAVA中方法的值传递

    首先了解在程序设计语言中 有关将参数传递给方法的一些专业术语 按值调用 call by value 表示方法接收的是调用者提供的值 而按引用调用 call by reference 表示方法接收的是调用者提供的变量地址 一个方法可以修改传递
  • 【uniapp】五、通用插件封装与运行平台判断(续集)

    一 uniapp项目目录 uniapp给我们的项目框架介绍 有一些文件夹是没有在模板中内置的 因此我们需要自己手动创建以下 例如最外层的components 用来放置我们的一些全局通用组件 components 符合vue组件规范的uni
  • Mybatis 查询出来的数据集合数量正确,但是具体数据为null

    目录 回顾场景 问题分析 解决方案 把对应的实体类字段名与数据库的保持一致 然后查询 回顾场景 确认sql语句没有问题 可以在数据库查询出来 3条数据 但是通过代码查询出来List集合 看到数量是对的 但是里面的数据全部为空null 问题分
  • 服务大厅支撑系统 服务器,GB∕T 36639-2018 信息安全技术 可信计算规范 服务器可信支撑平台(高清版).pdf...

    2018年新发布国家标准 即将实施 及早知悉 把握先机 ICS35 040 L80 中华人 民共和 国国家标准 GBT36639 2018 信息安全技术 可信计算规范 服务器可信支撑平台 Informationsecurittechnolo
  • 模拟电路设计(11)--- 运算放大器实际使用注意事项

    判断是否负反馈状态 我们先来说下什么是负反馈 凡是将放大电路输出量 电压或电流 直流或交流 的一部分或全部 通过一定的电路 称为反馈电路 以一定的方式 串联或并联 反送到放大电路的输入电路 减小净输入量 从而使输出量比无反馈时也随之减小的反
  • 灾难恢复! 关于做过快照的AVHD文件合并成VHD .

    http bbs 51cto com thread 964919 1 html 应用实例 某公司新装一台虚拟化服务器 采用W2008R2 用三个硬盘 其中一个固态硬盘用来做父系统 2个SAS硬盘做RAID1 存储VHD 某管理员3个月前安装
  • 防火墙双机热备

    目录 防火墙双机热备概述 VRRP VRRP术语 VRRP和Cisco的HSRP的区别 VRRP的状态机 VRRP的工作原理 双机热备的备份方式自动备份 该莫试下 和双机热备有关的配置命令只能在主用设备上配置 主用设备自动将状态信息同步到备
  • Elasticsearch5.5-IK分词器安装

    0 下载对应的版本IK https github com medcl elasticsearch analysis ik releases 1 在elasticsearch的plugins文件夹下新建ik目录 2 讲下载下来的ik分词器解压
  • python 解决约瑟夫环问题

    题目1 计算约瑟夫环问题 tips 幸运的基督徒 有15个基督徒和15个非基督徒在海上遇险 为了能让一部分人活下来不得不将其中15个人扔到海里面去 有个人想了个办法就是大家围成一个圈 由某个人开始从1报数 报到9的人就扔到海里面 他后面的人
  • (div+css特效代码) 导航菜单栏

    截图效果 Jsp代码
  • System用法详细解析

    System类代表系统 系统级的很多属性和控制方法都放置在该类的内部 该类位于java lang包 由于该类的构造方法是private的 所以无法创建该类的对象 也就是无法实例化该类 其内部的成员变量和成员方法都是static的 标准输入输