您的位置:首页 > 编程语言 > Java开发

JAVA——System类

2016-05-20 22:09 393 查看
关于Java中使用的System对象,我们经常使用的是Systme.out.print ,而且也仅仅知道这是一个可以在控制台打印出语句,而没有去深究它的内在实现原理。下面我就详细地介绍System对象。

1.JDK中有如下定义:.The System class contains several useful class fields and methods. It cannot be instantiated.

也就是说System对象是不能被实例化的,只能通过调用它的属性和方法来使用它。

2.System中的属性 Systme.in 是InputStream类型的,可以接受控制台输入的信息; System.out 和 System.err 都是PrintStream类型的 ,可以在控制台输出信息。

3.System.getProperties() 返回的是Properties类型的对象,而返回的信息是Java虚拟机启动过程中所要加载的环境配置信息。可以通过下面的代码获取和输出信息,由于Properties是HashTable的一个子类,因此可以通过Map方法取出该集合中的元素

import java.util.*;
class SystemDemo
{
public static void main(String[] args)
{
Properties prop = System.getProperties();

//因为Properties是Hashtable的子类,也就是Map集合的子类对象
//那么可以通过map的方法取出该集合中的元素
//该集合中存储都是字符串,没有泛型定义

//如何在系统中自定义一些特有信息呢?
//System.getProperty("mykey","myvalue");

//获取指定属性信息。
String values = System.getProperty("os.name");
System.out.println(values);

//可不可以在jvm启动时,动态加载一些属性信息呢?
String v = System.getProperty("hah");
System.out.println("v="+v);
/*
for(Object obj:prop.keySet())
{
String value = (String)prop.get(obj);
System.out.println(obj+"::"+value);
}*/
}
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: