Java 的 System 类常用方法介绍

        Java 中的 `System` 类是一个final类,它提供了与系统相关的属性和方法。它是一个内置的类,可以直接使用,不需要实例化。`System` 类提供了标准输入、标准输出和错误输出流,以及对外部定义的属性和系统环境的访问。下面是 `System` 类的一些常用方法,以及它们的简单示例。


        标准输入输出流
        标准输出(`System.out`)


public class SystemOutExample {
    public static void main(String[] args) {
        System.out.println("Hello, World!"); // 打印并换行
        System.out.print("This is a "); // 打印不换行
        System.out.print("simple example.\n"); // 打印并换行
    }
}


        标准输入(`System.in`)


import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
public class SystemInExample {
    public static void main(String[] args) throws IOException {
        BufferedReader reader = new BufferedReader(new InputStreamReader(System.in));
        System.out.println("Please enter your name:");
        String name = reader.readLine();
        System.out.println("Hello, " + name + "!");
    }
}


        标准错误输出(`System.err`)


public class SystemErrExample {
    public static void main(String[] args) {
        System.err.println("This is an error message.");
    }
}


        系统属性
        获取系统属性


public class SystemPropertiesExample {
    public static void main(String[] args) {
        String javaVersion = System.getProperty("java.version");
        System.out.println("Java version: " + javaVersion);
    }
}


        设置系统属性


public class SetSystemPropertyExample {
    public static void main(String[] args) {
        System.setProperty("myProperty", "myValue");
        String myProperty = System.getProperty("myProperty");
        System.out.println("myProperty: " + myProperty);
    }
}


        系统环境变量
        获取环境变量


public class SystemEnvironmentExample {
    public static void main(String[] args) {
        String path = System.getenv("PATH");
        System.out.println("PATH: " + path);
    }
}


        垃圾回收
        强制垃圾回收


public class SystemGCExample {
    public static void main(String[] args) {
        // 提醒JVM进行垃圾回收
        System.gc();
    }
}


        复制数组
        数组复制


public class SystemArrayCopyExample {
    public static void main(String[] args) {
        int[] src = {1, 2, 3, 4, 5};
        int[] dest = new int[10];
        System.arraycopy(src, 0, dest, 0, src.length);
        for (int i : dest) {
            System.out.print(i + " ");
        }
    }
}


        加载文件和库
        加载文件


public class SystemLoadExample {
    public static void main(String[] args) {
        // 加载文件(通常是本地库)
        System.load("libraryname.dll");
    }
}


         加载库


public class SystemLoadLibraryExample {
    public static void main(String[] args) {
        // 加载库
        System.loadLibrary("libraryname");
    }
}


        运行垃圾回收并返回内存使用情况
        运行垃圾回收


public class SystemRunFinalizationExample {
    public static void main(String[] args) {
        // 运行垃圾回收
        System.runFinalization();
    }
}


        获取系统时间
        获取当前时间(以毫秒为单位)


public class SystemCurrentTimeMillisExample {
    public static void main(String[] args) {
        long currentTime = System.currentTimeMillis();
        System.out.println("Current time in milliseconds: " + currentTime);
    }
}


        出口程序
        退出程序


public class SystemExitExample {
    public static void main(String[] args) {
        System.out.println("This program will exit.");
        System.exit(0); // 退出程序,状态码为0
    }
}


        总结
        Java 的 `System` 类提供了对标准输入输出流、系统属性、环境变量、垃圾回收、数组复制、加载文件和库、获取系统时间以及退出程序等功能的访问。这些功能是Java程序与运行时环境交互的基础。了解和掌握 `System` 类的方法对于Java开发者来说是非常重要的。虽然这些方法通常不是复杂程序的核心,但它们是日常编程中不可或缺的工具。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/442304.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

如何在Android 上查找恢复删除/隐藏的照片?5 个值得尝试的方法分享

Android 设备上的删除/隐藏图像有多种用途,无论是保护隐私还是优化存储空间。然而,在某些情况下,用户可能由于意外隐藏、删除或仅仅是出于好奇而需要取消删除/隐藏这些照片。在这种情况下,了解如何在 Android 上查找删除/隐藏的照…

Sora的新商业视角:从生态构建到未来产业协同

在科技飞速发展的当下,人工智能与机器学习不仅重塑了我们的生活方式,还深刻地改变了商业模式的构建方式。Sora,作为一款前沿的AI视频生成工具,其盈利路径和未来产业协同的可能性值得深入探讨。 Sora学习资料:使用方式…

LabVIEW智能Modbus监控系统

LabVIEW智能Modbus监控系统 在自动化和信息化迅速发展下,传统的监控系统已无法满足现代工业对于数据通讯和处理的高效率和高可靠性要求。为了解决这一问题,设计了一套基于LabVIEW的智能Modbus监控系统。该系统利用LabVIEW的图形化编程环境和Modbus协议的…

Java jdk 21 安装

下载软件 https://www.oracle.com/hk/java/technologies/downloads/#jdk21-windows x64 MSI Installer: https://download.oracle.com/java/21/latest/jdk-21_windows-x64_bin.msi 获取JRE 用旧版Java的,不一定会知道这一个步骤 创建JRE命令&#xff…

【牛客】VL76 任意奇数倍时钟分频

描述 编写一个模块,对输入的时钟信号clk_in,实现任意奇数分频,要求分频之后的时钟信号占空比为50%。模块应包含一个参数,用于指定分频的倍数。 模块的接口信号图如下: 要求:使用Verilog HDL语言实现&#…

初阶数据结构之---二叉树的顺序结构-堆

引言 今天要讲的堆,不是操作系统虚拟进程地址空间中(malloc,realloc等开空间的位置)的那个堆,而是数据结构中的堆,它们虽然名字相同,却是截然不同的两个概念。堆的底层其实是完全二叉树&#x…

electron 程序与安装包图标放大与制作

原因 electron-builder 在打包时需要最小支持到256x256像素的icon图标。原有历史图标都太小了。需要尝试将图标放大。 工具 convertio.co/zh/ico-png/ 在线ico转png网站 https://github.com/upscayl/upscayl 图片放大工具 csdn下载 greenfish-icon-editor-pro.en.softonic.c…

Tomcat 的安装(详细教程)

目录 一、概述二、安装前准备三、Windows 安装1. 方式一2. 方式二 一、概述 官网:https://tomcat.apache.org/ Tomcat 是一个免费的、开放源代码的 Web 应用服务器,属于轻量级应用服务器,由 Apache、Sun 和一些公司以及个人共同开发而成&…

【MapReduce】03.MapReduce框架原理

目录 1.InputFormat数据输入 1.1.切片与MapTask并行度决定机制 1.2.Job提交流程源码和切片源码 1.3.FileInputFormat切片机制 1.4.TextInputFormat 1.5.CombineTextInputFormat切片机制 1.6.CombineTextInputFormat 1.InputFormat数据输入 1.1.切片与MapTask并行度决定…

Qt开发QHostInfo主机地址查询组件

Qt 是一个跨平台C图形界面开发库,利用Qt可以快速开发跨平台窗体应用程序,在Qt中我们可以通过拖拽的方式将不同组件放到指定的位置,实现图形化开发极大的方便了开发效率,本章将重点介绍如何运用QHostInfo组件实现对主机地址查询功能…

IP地址:现代网络通信的基础

IP地址(Internet Protocol Address)是指互联网协议地址,又译为网际协议地址。它是IP协议提供的一种统一的地址格式,为互联网上的每一个网络和每一台主机分配一个逻辑地址,以此来屏蔽物理地址的差异。这种地址形式使得互…

第九篇 – 过程发现(Process Discovery)是如何赋能数字化市场营销全过程?- 我为什么要翻译介绍美国人工智能科技巨头IAB公司

IAB平台,使命和功能 IAB成立于1996年,总部位于纽约市。 作为美国的人工智能科技巨头社会媒体和营销专业平台公司,互动广告局(IAB- the Interactive Advertising Bureau)自1996年成立以来,先后为700多家媒体…

【Python】成功解决AttributeError: ‘MyClass‘ object has no attribute ‘my_attribute‘

【Python】成功解决AttributeError: ‘MyClass’ object has no attribute ‘my_attribute’ 🌈 个人主页:高斯小哥 🔥 高质量专栏:Matplotlib之旅:零基础精通数据可视化、Python基础【高质量合集】、PyTorch零基础入门…

魅力女神节•巾帼绽芳华 | 联诚发开展三八国际妇女节慰问活动

为进一步丰富女职工精神文化生活,展现新时代巾帼风采,弘扬积极向上、奋勇争先的精神风貌。3月8日,联诚发LCF开展了三八妇女节慰问活动,为全体女职工送上温馨的祝福和节日的问候。 清晨,活动现场便已经装饰一新&#xf…

【kerberos】hadoop集群使用keytab认证的逻辑

一、背景: haoop的kerberos认证核心是org.apache.hadoop.security.UserGroupInformation类。 UserGroupInformation一般有两种:(1)apache原生的(2)cdh hdp改良过的,即cloudera改良过的。 由此衍…

基于SpringBoot校园失物招领系统的设计与实现(程序+数据库+文档)

** 🍅点赞收藏关注 → 私信领取本源代码、数据库🍅 本人在Java毕业设计领域有多年的经验,陆续会更新更多优质的Java实战项目,希望你能有所收获,少走一些弯路。🍅关注我不迷路🍅** 一、研究背景…

Linux操作系统的vim常用命令和vim 键盘图

在vi编辑器的命令模式下,命令的组成格式是:nnc。其中,字符c是命令,nn是整数值,它表示该命令将重复执行nn次,如果不给出重复次数的nn值,则命令将只执行一次。例如,在命令模式下按j键表…

RabbitMQ篇

1.初始MQ 1.1. 同步和异步通讯 微服务间通讯有同步和异步两种方式: 同步通讯:就像打电话,需要实时响应。 异步通讯:就像发邮件,不需要马上回复。 两种方式各有优劣,打电话可以立即得到响应,…

计算机网络——23网络层导论

网络层导论 网络层服务 在发送主机和接收主机对之间传送段(segment)在发送端将段封装到数据报中在接收端,将段上交给传输层实体网络层协议存在于每一个主机和路由器路由器检查每一个经过它的IP数据报的头部 网络层的关键功能 网络层功能 …

探秘WiFi 6技术:特性与优势解析

随着科技的飞速发展,无线网络技术也在不断演进,WiFi 6(802.11ax)作为最新一代的无线网络标准,正逐渐成为新一轮技术革新的引领者。本文将深入探讨WiFi 6模块的特性和优势,揭示其在无线通信领域的巨大潜力。…