中小网站建设相亲网站做期货现货贵金属的人

张小明 2025/12/31 20:49:10
中小网站建设,相亲网站做期货现货贵金属的人,wordpress插件漏洞扫描,西部数码网站助手4.0Java 中的 System 类#xff0c;它是 java.lang 包下的核心系统类#xff0c;提供了大量与系统交互的静态方法和静态属性#xff0c;用于访问系统环境、执行系统级操作#xff08;如输入输出、垃圾回收、系统退出等#xff09;#xff0c;下面从核心特性、静态属性、常用…Java 中的System类它是java.lang包下的核心系统类提供了大量与系统交互的静态方法和静态属性用于访问系统环境、执行系统级操作如输入输出、垃圾回收、系统退出等下面从核心特性、静态属性、常用方法等方面全面讲解一、核心特性System类是最终类final不能被继承构造方法被private修饰无法通过new关键字创建实例所有属性和方法均为静态直接通过System.属性/方法名()调用功能覆盖系统输入输出、环境变量获取、数组复制、垃圾回收、系统时间获取等核心场景。二、核心静态属性System类提供了 3 个标准的输入 / 输出 / 错误输出流是 Java 基础 IO 操作的核心入口静态属性类型说明System.inInputStream标准输入流默认对应键盘输入用于读取外部输入数据System.outPrintStream标准输出流默认对应控制台输出用于打印正常信息System.errPrintStream标准错误输出流默认对应控制台输出专门用于打印错误信息输出内容通常为红色控制台默认样式示例使用静态属性进行输入输出import java.util.Scanner; public class SystemDemo { public static void main(String[] args) { // 1. System.out打印正常信息 System.out.println(这是标准输出流的正常信息); // 2. System.err打印错误信息 System.err.println(这是标准错误输出流的错误信息); // 3. System.in读取键盘输入结合 Scanner 使用 Scanner scanner new Scanner(System.in); System.out.print(请输入您的姓名); String name scanner.nextLine(); System.out.println(您好 name); scanner.close(); } }三、常用静态方法分类详解1. 系统退出exit(int status)用于终止当前 Java 虚拟机JVM的运行是程序主动退出的核心方法。参数status退出状态码0表示正常退出非 0 表示异常退出通常用1表示通用异常该方法执行后JVM 立即终止后续代码不再执行。public static void main(String[] args) { System.out.println(程序开始执行); // 模拟业务判断满足条件则退出 boolean needExit true; if (needExit) { System.out.println(程序准备退出); System.exit(0); // 正常退出JVM } // 以下代码不会执行 System.out.println(程序继续执行); }2. 垃圾回收gc()用于主动触发 Java 垃圾回收器GC的执行建议 JVM 回收那些不再被引用的对象所占用的内存。注意gc()是建议性方法并非强制性触发。JVM 会根据当前内存使用情况决定是否立即执行垃圾回收可能会忽略该请求垃圾回收的核心逻辑由 JVM 底层实现无需手动干预仅在特殊场景下如大量临时对象创建后可调用该方法辅助内存释放。public static void main(String[] args) { // 创建大量临时对象 for (int i 0; i 10000; i) { new Object(); } System.out.println(创建大量临时对象完成); // 建议JVM执行垃圾回收 System.gc(); // 等价于 Runtime.getRuntime().gc() System.out.println(已触发垃圾回收建议); }3. 数组复制arraycopy()用于快速复制数组的指定区间元素是 Java 中数组复制的高效底层方法Arrays.copyOf()等方法底层也是基于arraycopy()实现。方法签名public static void arraycopy( Object src, // 源数组 int srcPos, // 源数组的起始复制索引包含 Object dest, // 目标数组 int destPos, // 目标数组的起始存放索引包含 int length // 要复制的元素个数 )示例数组复制public static void main(String[] args) { int[] srcArr {1, 2, 3, 4, 5}; int[] destArr new int[10]; // 目标数组长度为10 // 复制源数组索引1~3的元素2,3,4到目标数组索引2开始的位置 System.arraycopy(srcArr, 1, destArr, 2, 3); System.out.println(目标数组内容); for (int num : destArr) { System.out.print(num ); // 输出0 0 2 3 4 0 0 0 0 0 } }注意事项若源数组或目标数组为null会抛出NullPointerException若索引越界如srcPos length超过源数组长度会抛出ArrayIndexOutOfBoundsException支持基本类型数组和引用类型数组的复制。4. 系统时间获取1currentTimeMillis()获取当前时间戳毫秒级返回从1970 年 1 月 1 日 00:00:00 GMT格林威治标准时间到当前时刻的毫秒数类型为long。常用于计算程序执行耗时、生成唯一标识简单场景、时间戳记录等。public static void main(String[] args) { // 记录程序开始时间 long startTime System.currentTimeMillis(); // 模拟耗时操作循环计算 long sum 0; for (long i 0; i 1000000000L; i) { sum i; } // 记录程序结束时间 long endTime System.currentTimeMillis(); // 计算耗时毫秒 System.out.println(计算结果 sum); System.out.println(程序耗时 (endTime - startTime) 毫秒); }2nanoTime()获取高精度时间戳纳秒级返回 JVM 启动以来的纳秒数相对时间非绝对时间精度远高于currentTimeMillis()1 纳秒 10^-9 秒。适用于高精度时间间隔测量如微秒级 / 纳秒级耗时统计不适合用于记录绝对时间。public static void main(String[] args) { long startNano System.nanoTime(); // 模拟短时间操作 String str ; for (int i 0; i 1000; i) { str i; } long endNano System.nanoTime(); // 转换为微秒1微秒 1000纳秒 long costMicro (endNano - startNano) / 1000; System.out.println(操作耗时 costMicro 微秒); }5. 环境变量与系统属性1getenv()获取系统环境变量System.getenv()返回所有系统环境变量的MapString, String集合System.getenv(String name)根据环境变量名获取对应值如PATH、JAVA_HOME。public static void main(String[] args) { // 1. 获取指定环境变量JAVA_HOME String javaHome System.getenv(JAVA_HOME); System.out.println(JAVA_HOME 路径 javaHome); // 2. 获取所有环境变量并遍历 System.out.println(\n所有系统环境变量); System.getenv().forEach((key, value) - { System.out.println(key value); }); }2getProperty()获取 Java 系统属性System.getProperty(String key)根据属性名获取对应值System.getProperties()返回所有 Java 系统属性的Properties对象常用系统属性user.name当前用户名、user.dir当前工作目录、java.versionJava 版本、os.name操作系统名称。public static void main(String[] args) { // 获取常用系统属性 String userName System.getProperty(user.name); String userDir System.getProperty(user.dir); String javaVersion System.getProperty(java.version); String osName System.getProperty(os.name); System.out.println(当前用户名 userName); System.out.println(当前工作目录 userDir); System.out.println(Java 版本 javaVersion); System.out.println(操作系统 osName); // 输出所有系统属性 System.out.println(\n所有Java系统属性); System.getProperties().list(System.out); }3setProperty(String key, String value)设置 Java 系统属性用于手动设置自定义 Java 系统属性仅在当前 JVM 进程中有效进程结束后失效。public static void main(String[] args) { // 设置自定义系统属性 System.setProperty(app.name, JavaSystemDemo); System.setProperty(app.version, 1.0.0); // 获取自定义属性 String appName System.getProperty(app.name); String appVersion System.getProperty(app.version); System.out.println(应用名称 appName); System.out.println(应用版本 appVersion); }四、完整使用示例import java.util.Scanner; public class SystemCompleteDemo { public static void main(String[] args) { // 1. 标准输入输出 System.out.println( 标准输入输出演示 ); Scanner scanner new Scanner(System.in); System.out.print(请输入一个整数); int num scanner.nextInt(); System.out.println(你输入的整数是 num); if (num 0) { System.err.println(错误你输入的是负数); } // 2. 数组复制 System.out.println(\n 数组复制演示 ); int[] src {10, 20, 30, 40, 50}; int[] dest new int[8]; System.arraycopy(src, 1, dest, 2, 3); System.out.println(目标数组内容); for (int i : dest) { System.out.print(i ); } System.out.println(); // 3. 时间戳与耗时统计 System.out.println(\n 耗时统计演示 ); long startMs System.currentTimeMillis(); long sum 0; for (long i 0; i 500000000L; i) { sum i; } long endMs System.currentTimeMillis(); System.out.println(求和结果 sum); System.out.println(耗时毫秒 (endMs - startMs)); // 4. 系统属性与环境变量 System.out.println(\n 系统信息演示 ); System.out.println(Java 版本 System.getProperty(java.version)); System.out.println(当前工作目录 System.getProperty(user.dir)); System.out.println(PATH 环境变量 System.getenv(PATH).substring(0, 50) ...); // 5. 垃圾回收与系统退出 System.out.println(\n 垃圾回收与程序退出演示 ); System.gc(); System.out.println(已触发垃圾回收建议); scanner.close(); // 正常退出程序 System.exit(0); // 后续代码不会执行 System.out.println(这段代码不会被输出); } }五、核心总结System是java.lang包下的final 静态类无法实例化所有功能通过静态属性 / 方法调用核心静态属性in标准输入、out标准输出、err标准错误输出核心方法分类系统控制exit()退出 JVM、gc()建议垃圾回收数组操作arraycopy()高效数组复制时间获取currentTimeMillis()毫秒时间戳、nanoTime()纳秒高精度时间环境信息getenv()系统环境变量、getProperty()/setProperty()Java 系统属性注意事项gc()是建议性方法不保证 JVM 立即执行垃圾回收arraycopy()需避免索引越界和空指针异常nanoTime()是相对时间适合耗时统计不适合记录绝对时间。
版权声明:本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!

移动端优秀网站传送门网站是怎么做的

嵌入式代码优化实战技术文章大纲嵌入式代码优化概述嵌入式系统特点与优化需求优化目标:性能、功耗、内存占用常见优化误区与基本原则代码结构优化减少函数调用层级与内联函数使用循环展开与循环优化策略避免冗余计算与数据依赖内存优化技术静态内存分配与动态内存管…

张小明 2025/12/31 17:00:26 网站建设

旅游网站反链怎么做html爱心特效代码

"动手学大模型应用开发"是一个面向小白开发者的开源教程,通过个人知识库助手项目实践,帮助零基础开发者快速掌握大模型应用开发。教程涵盖大模型简介、API调用、开发流程、数据库搭建、Prompt设计等核心内容,基于LangChain框架统一…

张小明 2025/12/31 17:00:25 网站建设

新闻稿代写平台超级seo企业网站系统

在AI技术飞速发展的今天,各大厂商纷纷推出自己的智能助手,但逐个测试不同AI模型既耗时又低效。ChatALL正是为解决这一痛点而生,它是一款革命性的多AI对话聚合工具,让你能够同时向超过30款主流AI聊天机器人提问,快速发现…

张小明 2025/12/31 17:00:26 网站建设

单页产品网站源码带后台大战网站建设

什么是 电鱼智能 RK3576? 电鱼智能 RK3576 是一款定位于“中高端计算能手”的 SoC 平台。它采用 4 核 Cortex-A72 4 核 Cortex-A53 异构架构,集成 6TOPS 三核心 NPU。相比 RK3588,它去除了医疗影像中不常用的 8K 编解码冗余,保留…

张小明 2025/12/31 17:00:24 网站建设

南昌网站建设一般多少钱一年360建筑网如何删除简历

当小模型遇到大挑战:推理能力瓶颈如何解决? 【免费下载链接】DeepSeek-R1-Distill-Qwen-32B DeepSeek-R1-Distill-Qwen-32B,基于大规模强化学习,推理能力卓越,性能超越OpenAI-o1-mini,适用于数学、代码与推…

张小明 2025/12/31 17:00:24 网站建设

网站续费要多少钱佛山专业画册设计公司

敏捷项目管理:估算、指标、缺陷、测试与客户参与 1. 敏捷项目估算方法 在敏捷项目中,估算工作是一项重要的基础任务。每个人在进行估算时,都会基于自身经验,这其实隐含了与其他用户故事的比较。例如规划扑克法就包含了类比估算的元素,类比估算又与三角测量法相关,将待估…

张小明 2025/12/31 17:00:28 网站建设