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方法取出该集合中的元素
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); }*/ } }
相关文章推荐
- [Java]javac 编译源文件出现“锘缝ublic”、“非法字符: \65279”的乱码情况
- eclipse的应用技巧(一)
- Java环境搭建,以win10为例
- java并发-ReentrantLock的lock和lockInterruptibly的区别
- Java内存与垃圾收集知识总结
- Java 设计模式 -- 职责链模式
- 为什么要设置Java环境变量(详解)
- Struts逐步学习
- Java基础——数组(一维数组,二维数组)
- Eclipse导出JAR包【java】
- Java线程学习笔记(一)
- java版strspn
- java向上转型和向下转型
- Java之arrayList 方法二
- JavaSE入门学习46:文件传输基础之I/O流(五)(Java序列化)
- 漂亮的JAVABEAN与TEXT传递
- 20非常有用的Java程序片段
- JDK里的设计模式
- mavlink的Java语言之探索实现
- Struts2源码阅读