System类
System类中的方法和属性都是静态的。
常见方法:
-
long currentTimeMillis();
获取当前时间的毫秒值(以1970年1月1日为基准)
long l = System.currentTimeMillis();
System.out.println(l);
-
Properties getProperties();
获取系统属性信息
Properties集合中存储的都是String类型的键和值,最好使用它自己的存储和取出的方法来完成元素的操作。
//获取系统的属性信息,并存储到了Properties集合中。
Properties prop = System.getProperties();
Set<String> nameSet = prop.stringPropertyNames();
for(String name : nameSet){
String value = prop.getProperty(name);
System.out.println(name+"::"+value);
}
获取和使用系统属性信息非常有用,比如各个系统平台下的换行符不一样,为了通用,可以获取并使用属性信息中的 line.separator
。
System.out.println("hello"+System.getproperty("line.separator")+"world");
这样,不管在什么系统中,都能识别为换行。
此外,还可以通过 System.setProperty()
给系统设置一些属性信息,这些信息是全局的,其他程序都可以使用。
System.setProperty("myclasspath","c:\\myclass");
Runtime类
Runtime类没有构造方法摘要,说明该类不可以创建对象。但它有非静态的方法,这说明该类应该有一个提供静态返回该类对象的方法。这是因为Runtime类使用了单例设计模式。
Runtime类的静态方法是 getRuntime()
。创建对象后,可以使用Runtime类的其他方法。如用 exec()
来打开记事本:
Runtime r = Runtime.getRuntime();
Process p = r.exec("notepad.exe"); //创建进程
Thread.sleep(5000); //等待5秒
p.destroy(); //杀掉进程p