• java中Runtime类和Process类的简单介绍


    在java.lang包当中定义了一个Runtime类,在java中对于Runtime类的定义如下:
    Java code
    public class Runtime extends Object
    每个 Java 应用程序都有一个 Runtime 类实例,使应用程序能够与其运行的环境相连接。可以通过 
    getRuntime 方法获取当前运行时。应用程序不能创建自己的 Runtime 类实例。
    
    根据上面的话,我们知道对于每一个java程序来说都只有一个Runtime类实例,而且不能由用户创建一个Runtime
    实例,既然不能创建那么这个类的实例的作用是什么呢?它提供了应用程序和应用程序正在运行的环境的一个接口。
    Runtime不能由我们创建,我们可以通过Runtime类的一个静态方法,得到一个Runtime类的实例。获取了这个实例
    之后我们就可以获取java虚拟机的自由内存、也可以获取这个java虚拟机的总的内存等(具体的方法可以参照java
    帮助文档Runtime类的方法学习),也就是说这个类提供了应用程序了环境的接口。下面我们举一个例子程序:
    
    Java code
    Runtime rt=Runtime.getRuntime(); System.out.println(rt.freeMemory()); System.out.println(rt.totalMemory());//结果返回的是数字
    Runtime类还有一个好处就是可以执行一个外部的程序,可以调用Runtime类的exec()方法传入一个命令(exec()方法
    有几个重载的方法,可以自己学习),创建一个子进程,结果返货一个Process类的实例,通过这个实例我们可以管
    理创建的子进程。对于Process类在java帮助文档中描述如下:
    
    Java code
    public abstract class Process extends Object
    ProcessBuilder.start() 和 Runtime.exec 方法创建一个本机进程,并返回 Process 子类的一个实例,该实例
    可用来控制进程并获得相关信息。Process 类提供了执行从进程输入、执行输出到进程、等待进程完成、检查进程
    的退出状态以及销毁(杀掉)进程的方法。
    
    下面我们接着上面的代码继续写:
    
    Java code
    try { rt.exec("notepad"); } catch(Exception e) { e.printStackTrace; }//在使用exec()方法的时候会抛出一个异常,我们需要捕获
    这段代码,是运行在windows上的,它调用了windows系统的记事本程序。举一反三我们同样可以用这个方法去编译
    java的文件,只是传入的参数是“javac ***.java”。
    
    对于Process类的实例主要作用是创建一个可以管理的进程,并对它进行管理。Process类还有几个方法分别是
    destroy() 杀掉子进程、exitValue()返回子进程的出口值、getErrorStream()获取子进程的错误流,错误流获得
    由该 Process 对象表示的进程的错误输出流传送的数据,还有获取输入流输出流请读者自己参照java帮助文档学习。
  • 相关阅读:
    图形界面 Fedora Core 12/Core 11 How to log in GUI as r
    nis_client.txt
    nis_server.txt
    passwd
    samba.set
    【22.48%】【codeforces 689D】Friends and Subsequences
    【71.76%】【codeforces 732A】Buy a Shovel
    【56.74%】【codeforces 732B】Cormen --- The Best Friend Of a Man
    【43.26%】【codeforces 732C】Sanatorium
    【37.50%】【codeforces 732D】Exams
  • 原文地址:https://www.cnblogs.com/pekkle/p/6568846.html
Copyright © 2020-2023  润新知