System类中的方法和属性都是静态的。
out:标准输出,默认是控制台。
in:标准输入,默认是键盘。
那么会直接想到该类中的方法都是静态的,发现该类中还有非静态方法。
说明该类肯定会提供方法获取本类对象,而且该方法是静态的,并返回值类型是本类类型。
该类使用的是单例设计模式完成。
out:标准输出,默认是控制台。
in:标准输入,默认是键盘。
描述系统一些信息,获取系统属性信息:Properties getProprtties();
代码:
import java.util.*;
import static java.util.Arrays.*;//导入的是Arrays这个类中的所有静态成员
/*
packa/Demo.class
packb/Demo.class
import.packa.*;
import.packb.*;
*/
import static java.lang.System.*;//导入了System类中所有静态成员
public class code
{
public static void main(String[] args) {
Properties prop = System.getProperties();
//因为Properties是Hashtable的子类,也就是Map集合的一个子类对象。
//那么可以通过map的方法取出该集合中的元素。
//如何在系统中自定义一些特有信息呢?
System.setProperty("my", "key");
//获取指定属性信息
String num = System.getProperty("os.name");
System.out.println("num:"+num);
//可以在jvm启动时,动态加载一些属性信息
//获取所有属性信息
// for(Object obj : prop.keySet()) {
// String value = (String)prop.get(obj);
// System.out.println(obj+":"+value);
// }
}
}
Runtime对象:该类并没有提供构造函数,说明不可以new对象。
那么会直接想到该类中的方法都是静态的,发现该类中还有非静态方法。
说明该类肯定会提供方法获取本类对象,而且该方法是静态的,并返回值类型是本类类型。
该类使用的是单例设计模式完成。
该方式是static Runtime getRuntime();
代码:
import java.util.*;
public class code
{
public static void main(String[] args) throws Exception {
Runtime r = Runtime.getRuntime();
Process p = r.exec("notepad.exe");
//Thread.sleep(4000);
//p.destroy();
}
}