Java常用API之System和Runtime类

文章详细介绍了Java中的System类和Runtime类,包括System类的currentTimeMillis()、exit()、gc()等方法,以及Runtime类的getRuntime()、totalMemory()、freeMemory()和exec()等方法,展示了如何获取系统时间、系统属性、进行内存管理和执行外部命令。
摘要由CSDN通过智能技术生成

在Java中提供了一些相关的系统相关的类,可以帮助我们获取系统的一些信息。

System类

System类是处于java.lang包下的一个用于获取系统的相关信息的类。比如:获取当前系统时间,系统属性等。里面包含的都是静态的方法,能够让我们更好的去调用执行。

常用方法:

  • static long currentTimeMills():返回当前的系统时间距离1970-01-01 0:0:0的毫秒值
  • static void exit(int status):退出当前系统
  • static void gc():运行垃圾回收器
  • static String getProperty(String key):获取系统的key属性
  • static String setProperty(String key, String value) :设置当前系统的某个参数

代码演示:

public class SystemTest {
    public static void main(String[] args) {
        Long start = System.currentTimeMillis();
        System.out.println("start = " + start);
        for (int i = 0; i < 100000; i++) {

        }
        Long end = System.currentTimeMillis();
        System.out.println("end = " + end);
        System.out.println("过了:"+(end-start)+"秒");

        //Properties properties = System.getProperties();
        //System.out.println("properties = " + properties);
        String name = System.getProperty("java.vm.name");
        System.out.println("name = " + name);

        String setProperty = System.setProperty("name", "西施");
        System.out.println("setProperty = " + setProperty);
        String property = System.getProperty("name");
        System.out.println("property = " + property);

        new Date();
        System.gc();

        System.exit(0);

        System.out.println(" ======= "); //不会执行
    }
}

结果:
System中的常用方法演示

Runtime类

Runtime类也是位于java.lang包下,主要作用是让我们的每一个Java应用程序都可以与对应的运行环境相连接。可以通过getRuntime方法获取当前的运行时对象。应用程序不能够自己创建自己的Runtime类实例

常用的方法:

  • public static Runtime getRuntime():返回与当前应用程序相关的运行时对象。
  • public long totalMemory():返回Java虚拟机中的中内存总量。由于主机的环境,返回得知也可能在变化
  • public long freeMemory():返回虚拟机的空闲内存量,调用gc()方法可能导致这个值增加。
  • void gc() :运行垃圾回收器
  • public long maxMemory():返回Java虚拟机试图使用的最大内存量。

Process exec(String command):在单独的进程中执行指定的字符串命令。

代码演示:

public class RuntimeTest {
    public static void main(String[] args) {
        Runtime runtime = Runtime.getRuntime();
        System.out.println("runtime = " + runtime);

        long totalMemory = runtime.totalMemory();
        System.out.println("totalMemory = " + totalMemory);

        long freeMemory1 = runtime.freeMemory();
        System.out.println("freeMemory1 = " + freeMemory1);
        new Date();
        long freeMemory2 = runtime.freeMemory();
        System.out.println("freeMemory2 = " + freeMemory2);
        runtime.gc();
        long freeMemory3 = runtime.freeMemory();
        System.out.println("freeMemory3 = " + freeMemory3);

        long maxMemory = runtime.maxMemory();
        System.out.println("maxMemory = " + maxMemory);
    }
}

结果演示:
Runtime测试结果演示

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

黑妖问路

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值