System类是一些与系统相关属性和方法的集合,而且System类中所有的属性都是静态的,要想引用这些属性和方法,直接使用System类调用即可。

//=================================================
// File Name : System_demo
//------------------------------------------------------------------------------
// Author : Common //主类
//Function : System_demo
public class System_demo { public static void main(String[] args) {
// TODO 自动生成的方法存根
long startTime = System.currentTimeMillis(); //取得开始计算之前的时间 int sum = 0; //累加操作
for(int i=0;i<300000000;i++){
sum += i;
} long endTime = System.currentTimeMillis(); //取得开始计算之后的时间
System.out.println("计算所花费的时间:"+(endTime-startTime)+"毫秒"); System.getProperties().list(System.out); //列出系统的全部属性 System.out.println("系统版本为:"+System.getProperty("os.name")+System.getProperty("os.version")+System.getProperty("os.arch"));
System.out.println("系统用户为:"+System.getProperty("user.name"));
System.out.println("当前用户目录:"+System.getProperty("user.home"));
System.out.println("当前用户工作目录:"+System.getProperty("user.dir"));
} }

垃圾对象的回收

System类中也有一个rc()方法,此方法也可以进行垃圾的收集,而且此方法实际上是对Runtime类中的gc()方法的封装,功能与其类似。

对一个对象进行回收,一个对象如果不再被任何栈内存所引用,那么此对象就可以被成为垃圾对象,等待被回收。实际上,等待的时间是不确定的,所以可以直接调用System.gc()方法进行垃圾的回收。

System类对IO的支持

<1>System.out

System.out是PrintStream的对象,在PrintStream中定义了一系列的print()和println()方法

<2>System.err

System.err表示的是错误信息输出,如果程序出现错误,则可以直接使用System.err进行输出

<2>System.in

System.in实际上是一个键盘的输入流,其本身是InputStream类型的对象,可以利用System.in完成从键盘读取数据的功能。

指定空间的大小会出现空间限制,不指定大小则会在输入中文的时候产生乱码

package System;

import java.io.InputStream;

//=================================================
// File Name : Systemin_demo
//------------------------------------------------------------------------------
// Author : Common //主类
//Function : Systemin_demo System;
public class Systemin_demo { public static void main(String[] args) throws Exception{
// TODO 自动生成的方法存根
InputStream input = System.in; //从键盘接收数据
byte b[] = new byte[1024]; //开辟空间,接收数据
System.out.println("请输入内容:");
int len = input.read(b); //接收数据
System.out.println("输入的内容:"+new String(b,0,len));
input.close();
} }

输入/输出重定向

通过System类也可以改变System.in的输入流来源和System.out和System.err两个输出流的输出位置

System类的更多相关文章

  1. java中的System类

    System类代表系统,系统级的很多属性和控制方法都放置在该类的内部.该类位于java.lang包. 由于该类的构造方法是private的,所以无法创建该类的对象,也就是无法实例化该类.其内部的成员变 ...

  2. System类和Random类

    System类 成员方法: public static void gc():运行垃圾回收器 public static void exit(int status):退出垃圾回收器 public sta ...

  3. Java api 入门教程 之 JAVA的SYSTEM类

    System类代表系统,系统级的很多属性和控制方法都放置在该类的内部.该类位于java.lang包. 由于该类的构造方法是private的,所以无法创建该类的对象,也就是无法实例化该类.其内部的成员变 ...

  4. java 的SYSTEM类【转】

    java 的SYSTEM类[转] Posted on 2009-12-03 16:46 火之光 阅读(728) 评论(0) 编辑 收藏 System类代表系统,系统级的很多属性和控制方法都放置在该类的 ...

  5. java 14 -5 System类

    System类包含一些有用的类字段和方法.它不能被实例化. 方法: 1.public static void gc():运行垃圾回收器. 2.public static void exit(int s ...

  6. System类及其常用函数

    System 类包含一些有用的类字段和方法.它不能被实例化. 常用方法: 1.static void arraycopy(Object src, int srcPos, Object dest, in ...

  7. Java API —— System类

    1.System类概述         System 类包含一些有用的类字段和方法.它不能被实例化.  2.成员方法         public static void gc():运行垃圾回收器   ...

  8. Java System类看到的一点小记

    System类 位置java.lang包中 是final类,不能被继承,不能被修改 ,不能被实例化 private System(){}私有的构造函数,不允许被其他对象进行实例化 public fin ...

  9. Java System类

    java 不支持 全局方法 和 变量, system 类 中所有成员都是静态的, 而要引用这些变量和方法,可直接system作为前缀,

随机推荐

  1. mybatis自动生成代码

    使用maven集成mybatis-generator插件生成Mybatis的实体类,DAO接口和Map映射文件 本例中,使用的是mysql数据库 前提:表已经建好  mybatis框架的jar包,数据 ...

  2. URL参数GB2312和UTF-8编码 自动识别

    网上找的,以备后用. 直接上代码: public static string QueryStringDecode(string key) { HttpRequest Request = System. ...

  3. (Extjs)对于GridPanel的各种操作

    刚才做了个有点特殊的需求,在某窗口关闭时,要把Gridpanel中的选择行清空,因为如果不清空,直接双击,就不能即时更新出来我想要的内容. 答案是:Grid.getSelectionModel().c ...

  4. JVM执行Java程序时内存的划分

    Java虚拟机在执行Java程序过程中会把它所管理的内存区域划分为若干个不同的数据区域. Java虚拟机所管理的内存包括以下几个运行时区域: 1.程序计数器(Program Couter Regist ...

  5. Jenkins的maven工程打包的时候怎么指定不同环境的配置文件

    http://outofmemory.cn/code-snippet/6643/maven-profile-define-enviroment-package 在打包的时候我们添加上 这里我们指定配置 ...

  6. iOS开发遇到的错误 -- Label显示多行文字导致宽度和高度的问题

    Label的宽度问题 注意:UILabel下面需要设置preferredMaxLayoutWidth ,设置了autolayout和numberofline的UIlabel才显示多行 label宽度的 ...

  7. Ext-进度条

    1.progress使用 Ext.MessageBox.progress('请等待',msg:'读取数据中……'); 真实案例 tqbtnNews:function(){ var me = this; ...

  8. 数据库开发基础-SQl Server 变量、运算符、if、while

    变量: SQL语言也跟其他编程语言一样,拥有变量.分支.循环等控制语句. 在SQL语言里面把变量分为局部变量和全局变量,全局变量又称系统变量. 局部变量: 使用declare关键字给变量声明,语法非常 ...

  9. Java 垃圾收集机制

    对象引用 Java 中的垃圾回收一般是在 Java 堆中进行,因为堆中几乎存放了 Java 中所有的对象实例.谈到 Java 堆中的垃圾回收,自然要谈到引用.在 JDK1.2 之前,Java 中的引用 ...

  10. 【转】eclipse导入V7包出现错误解决办法

    android下v4    v7   v21等包是android系统的扩展支持包,就想windows的系统补丁一个道理. android的扩展包主要是用来兼容低版本的,比如android3.0以后出现 ...