zoukankan      html  css  js  c++  java
  • System对象

    System对象

    System中的类和属性都是静态的

    System可以描述系统环境

    在虚拟机启动的时候,系统环境会去加载一些系统属性信息,getProperties()获取描述,Property类是HashTable的子类,

    out是标准输出,默认是控制台,

    in是标准输入,默认是键盘

    System.gc()垃圾回收

    查看系统环境加载了那些信息(因为Properties是hashtable的子类,所以可以用hashtable的方法取出数据)

    import java.util.*;
    public class test{
        public static void main(String[] args)
        {
            Properties p= System.getProperties();
            for(Object o :p.keySet())
            {
                String value=(String)p.get(o);
                System.out.println(o+" "+value);
            }
        }
    }

    如何在系统中自定义一些特有信息?

    通过System.setProperty();

    System.setProperty("hhhhhhhhhhhhhhhhhh","mmmmmmmmmmmmmmmm");

    获取指定属性信息

    System.out.println(System.getProperty("hhhhhhhhhhhhhhhhhh"));

     在虚拟机启动时动态加载一些属性信息

    在cmd窗口运行时通过-D参数名=参数值的形式传递参数

    C:>java -Ddd=kkk test
    System.setProperty("hhhhhhhhhhhhhhhhhh","mmmmmmmmmmmmmmmm");
    Properties p= System.getProperties();
    String u=System.getProperty("dd");
    System.out.println(u);

    输出结果:kkk

    Runtime对象

    1,每个java应用程序都有一个Runtime(运行时)实例,使应用程序能与其运行环境相连接

    没有构造函数,而且他的方法都不是静态的,所以他一定会通过一个本类类型的静态方法提供一个本类对象【应用程序一执行,对象就创建完毕了】-----》单例设计模式---》只有一个对象

    获取对象的方法 static Runtime getRuntime()

    这个类的作用:

    exec():execute【执行】的简写

    command:cmd:命令

    exec(String command):可以在单独的进程中执行单独的命令

    有这个特点可以看出该类使用了单例设计模式完成

    下列代码可以运行qq应用程序

    Runtime r= Runtime.getRuntime();
            r.exec("C:\Program Files (x86)\Tencent\QQ\Bin\QQScLauncher.exe");

    %SystemRoot%system32;%SystemRoot%;

    因为环境变量中有这条,所以在执行这条命令式会去系统盘找

    C:\Program Files (x86)\Tencent\QQ\Bin\QQScLauncher.exe这个路径下的.exe文件

    桌面图标打开应用程序:点击按钮,调用本机应用程序

    Process exec(String command)

    返回值类型是Process abstract

    应用程序一被执行就已经创建了一个进程,是虚拟机创建的,

    Process中的方法

    destory()杀掉子进程【QQScLauncher.exe被秒杀

    他只能杀掉他自己创建的进程

    Runtime r= Runtime.getRuntime();
    Process p=r.exec("C:\Program Files (x86)\Tencent\QQ\Bin\QQScLauncher.exe");
    Thread.sleep(1000);
    p.destroy();

    打开一个文件,只需要指定打开他的工具【使用记事本打开test.java文件】

    Runtime r= Runtime.getRuntime();
    Process p=r.exec("notepad.exe test.java");

    Date类

    他对时间和日期进行了描述【精确到了毫秒】

    Date d= new Date();
    System.out.println(d);

    打印结果:Sun Mar 18 09:58:56 CST 2018

    打印的是当前时间

  • 相关阅读:
    步步为营-15-文件夹的操作
    步步为营-14-文件操作
    步步为营-13-日期转化
    步步为营-12-Dictionary-翻译
    步步为营-11-List<T>泛型的简单练习
    步步为营-10-string的简单操作
    步步为营-09-简单工厂类-计算器
    B. Fixed Points
    C. Cd and pwd commands
    Queries on a String
  • 原文地址:https://www.cnblogs.com/excellencesy/p/8592996.html
Copyright © 2011-2022 走看看