当前位置: 首页 > news >正文

Java常用类核心详解(二):System 类全网最细讲解

🏠个人主页:黎雁
🎬作者简介:C/C++/JAVA后端开发学习者
❄️个人专栏:C语言、数据结构(C语言)、EasyX、JAVA、游戏、规划、程序人生
✨ 从来绝巘须孤往,万里同尘即玉京


文章目录

  • Java常用类核心详解(二):System 类全网最细讲解 ✨
    • 📚 知识回顾
    • 📝 文章摘要
  • 1. System 类概述 🖥️
      • 核心特点
  • 2. 常用方法一览表 📋
  • 3. 方法细节 + 代码逐行讲解 💻
    • 3.1 exit(int status):停止虚拟机
    • 3.2 currentTimeMillis():获取时间戳 🔥
      • 最常用:统计程序运行时间
    • 3.3 arraycopy:高效数组拷贝 🔥(重点)
      • 参数顺序(必须背)
      • 示例代码
      • 三个重要细节
  • 4. 完整综合代码 ✅
  • 📌 重点总结(面试必背)
  • ✍️ 写在最后

Java常用类核心详解(二):System 类全网最细讲解 ✨

本文属于Java 常用类核心精讲系列,持续更新中~

📚 知识回顾

上一篇我们学习了Math 数学工具类,快速回顾一下重点:

  • Math 是final修饰的工具类,构造私有,方法全静态
  • 取整、绝对值、随机数、幂运算等常用 API 要熟练使用
  • abs(-2147483648)存在坑点,优先使用absExact
  • 随机数公式:[a,b](int)(Math.random()*(b-a+1)+a)

📝 文章摘要

  • 文章主题:JavaSystem系统类详解,获取时间、数组拷贝、退出 JVM
  • 阅读时长:7 分钟
  • 适合人群
    • Java 零基础:掌握系统级常用 API
    • 初中级开发:学会统计程序耗时、高效拷贝数组
    • 面试备考者:理解currentTimeMillisarraycopy原理与使用
  • 阅读重点
    1. System 类的工具类设计思想
    2. currentTimeMillis统计程序运行时间
    3. arraycopy数组拷贝参数与细节(高频)
    4. exit停止虚拟机

1. System 类概述 🖥️

System是 Java 提供的系统工具类,提供一系列与系统相关的操作,比如:获取系统时间、数组拷贝、退出虚拟机等。

核心特点

  • 位于java.lang包,不用导包
  • final修饰,不能被继承
  • 构造方法私有,不能创建对象
  • 全部是静态方法,直接类名.方法名调用
  • 包含三个常用静态变量:inouterr

2. 常用方法一览表 📋

方法签名说明
public static void exit(int status)终止当前 JVM 虚拟机
public static long currentTimeMillis()获取当前时间毫秒值(时间戳)
public static void arraycopy(源数组, 源起始索引, 目标数组, 目标起始索引, 长度)高效数组拷贝

3. 方法细节 + 代码逐行讲解 💻

3.1 exit(int status):停止虚拟机

  • 参数0:正常停止
  • 0:异常停止
publicclassSystemDemo1{publicstaticvoidmain(String[]args){System.out.println("程序开始");// 终止 JVMSystem.exit(0);// 这行代码永远不会执行System.out.println("程序结束");}}

应用场景:程序出现严重异常,强制结束运行。


3.2 currentTimeMillis():获取时间戳 🔥

作用:
返回1970年1月1日 00:00:00(UTC)到当前时间的毫秒差
东八区 = 1970-01-01 08:00:00

最常用:统计程序运行时间

publicstaticvoidmain(String[]args){// 开始时间longstart=System.currentTimeMillis();// 执行一段逻辑for(inti=0;i<100000;i++){// 空循环}// 结束时间longend=System.currentTimeMillis();System.out.println("耗时:"+(end-start)+" 毫秒");}

开发/面试高频:性能测试、算法耗时统计必用 API。


3.3 arraycopy:高效数组拷贝 🔥(重点)

这是 System 类最最常用的方法,底层是native 方法,效率极高。

参数顺序(必须背)

System.arraycopy(源数组,src 源起始索引,srcPos 目标数组,dest 目标起始索引,destPos 拷贝长度 length);

示例代码

publicstaticvoidmain(String[]args){int[]src={1,2,3,4,5,6,7,8,9,10};int[]dest=newint[10];// 把 src 从 0 开始,拷贝 3 个元素到 dest,从 4 号索引开始放System.arraycopy(src,0,dest,4,3);// 结果:[0, 0, 0, 0, 1, 2, 3, 0, 0, 0]System.out.println(Arrays.toString(dest));}

三个重要细节

  1. 基本数据类型:数组类型必须一致
  2. 引用数据类型:子类数组可以拷贝给父类数组
  3. 索引越界:源/目标数组越界,直接抛出ArrayIndexOutOfBoundsException

4. 完整综合代码 ✅

importjava.util.Arrays;publicclassSystemDemo1{publicstaticvoidmain(String[]args){// 1. 统计程序耗时longstart=System.currentTimeMillis();for(inti=0;i<1000000;i++){}longend=System.currentTimeMillis();System.out.println("循环耗时:"+(end-start)+"ms");// 2. 数组拷贝int[]arr1={1,2,3,4,5,6,7,8,9,10};int[]arr2=newint[10];System.arraycopy(arr1,0,arr2,2,5);System.out.println(Arrays.toString(arr2));// 3. 退出 JVM// System.exit(0);}}

📌 重点总结(面试必背)

  1. System 是系统工具类,方法全静态
  2. currentTimeMillis():获取毫秒时间戳,统计耗时
  3. arraycopy5 个参数顺序必须背:源、源索引、目标、目标索引、长度
  4. arraycopy是 native 方法,效率远高于循环拷贝
  5. exit(0)正常停止 JVM,非0异常停止

✍️ 写在最后

本篇把System 类的三个核心方法讲得非常透彻,尤其是arraycopy时间戳,是 Java 基础里面试、开发双高频知识点。

下一篇我们学习Runtime 类

  • JVM 运行环境
  • 单例模式设计
  • CPU核心数、内存查看
  • 执行 cmd 命令(打开记事本、浏览器等)
http://www.jsqmd.com/news/387169/

相关文章:

  • 2026年靠谱的双玻办公隔断/办公隔断最新TOP厂家排名 - 行业平台推荐
  • 2026年靠谱的商超设备/熟食陈列柜商超设备厂家推荐与选购指南 - 行业平台推荐
  • 2026年靠谱的天津红外光谱仪ATR/天津中红外光谱仪实力厂家 - 行业平台推荐
  • 2026年口碑好的PET不干胶/激光涂层打印不干胶厂家最新推荐 - 行业平台推荐
  • 2026年知名的自动量热仪/全自动量热仪用户口碑认可参考(高评价) - 行业平台推荐
  • 2026年知名的维利电子标签/维利礼品标签高评分品牌推荐(畅销) - 行业平台推荐
  • 2026年靠谱的窑炉风机/防爆风机制造厂家推荐哪家靠谱 - 行业平台推荐
  • 来自博主的2026新年祝福
  • AI技术实操:小说转短剧的全流程指南
  • 2026年知名的真空镀膜机/光学真空镀膜机厂家真实测评 - 行业平台推荐
  • 加拿大求职机构哪家好?HM内推+交付率深度对比(2026版) - 品牌排行榜
  • 2026年知名的实验室煤炭化验设备/煤炭化验设备全套品牌厂商推荐(更新) - 行业平台推荐
  • 2026年比较好的回火炉/台车式退火炉厂家专业度参考(精选) - 行业平台推荐
  • 2026年耐用的圆锥式破碎机/双辊式破碎机推荐几家可靠供应商参考 - 行业平台推荐
  • [1]粒子群算法mppt(四个粒子),代码注释清晰, [2]含有两个仿真模型,一个模型是查看自...
  • 2025年AI技术栈大揭秘!顶尖互联网公司都在用的“黄金组合”
  • 再论自然数全加和 - 降维的方法
  • 一个完整的车辆监控管理系统,包含后端API、Web管理后台和移动端应用
  • 2026年耐用的冷拔丝直销厂家采购指南如何选 - 行业平台推荐
  • 2026澳洲求职机构哪家好:本土岗位+身份规划全解析(必看) - 品牌排行榜
  • 2026除尘器门盖直销厂家哪家强?热门厂家排行来了,除尘器花板/电磁脉冲阀/除尘器骨架,除尘器门盖订制厂家哪里有卖 - 品牌推荐师
  • 2026留学生求职机构哪家强:交付率+导师资质全解析(避雷必看) - 品牌排行榜
  • Uniapp苹果内购支付全流程指南:从集成到上架的完整复盘
  • 2026年质量好的多圈电位器/贴片电位器品牌厂家推荐哪家强 - 行业平台推荐
  • MySQL 深度实践:表的约束及其在数据完整性中的作用
  • 2026年口碑好的仿古画舫游船/游船厂家采购参考指南 - 行业平台推荐
  • 2026年质量好的风道电加热器/空气电加热器供应商推荐怎么联系(畅销) - 行业平台推荐
  • Karma深度解析
  • 2026年优质的贵州铁塔电力设备/贵州成套电力设备制造厂家选购指南怎么选(精选) - 行业平台推荐
  • Sinon深度解析