系统类 System类

System类代表系统,系统级的很多属性和控制方法都放置在该类的内部。该类位于java.lang包。

由于该类的构造方法是private的,所以无法创建该类的对象,也就是无法实例化该类。其内部的成员变量和成员方法都是static的,所以也可以很方便的进行调用。

1、成员变量

System类内部包含in、out和err三个成员变量,分别代表标准输入流(键盘输入),标准输出流(显示器)和标准错误输出流(显示器)。

例如:

System.out.println(“Test”);

该行代码的作用是将字符串”Test”输出到系统的标准输出设备上,也就是显示在屏幕上。

后续在学习完IO相关的知识以后,可以使用System类中的成员方法改变标准输入流等对应的设备,例如可以将标准输出流输出的信息输出到文件内部,从而形成日志文件等。

2、成员方法

System类中提供了一些系统级的操作方法,这些方法实现的功能分别如下:

a、arraycopy方法

public static void arraycopy(Object src, int srcPos, Object dest, int destPos, int length)

该方法的作用是数组拷贝,也就是将一个数组中的内容复制到另外一个数组中的指定位置,由于该方法是native方法,所以性能上比使用循环高效。

使用示例:

int[] a = {1,2,3,4};

int[] b = new int[5];

System.arraycopy(a,1,b,3,2);

该代码的作用是将数组a中,从下标为1开始,复制到数组b从下标3开始的位置,总共复制2个。也就是将a[1]复制给b[3],将a[2]复制给b[4],这样经过复制以后数组a中的值不发生变化,而数组b中的值将变成{0,0,0,2,3}。

b、currentTimeMillis方法

public static long currentTimeMillis()

该方法的作用是返回当前的计算机时间,时间的表达格式为当前计算机时间和GMT时间(格林威治时间)1970年1月1号0时0分0秒所差的毫秒数。例如:

long l = System. currentTimeMillis();

则获得的将是一个长整型的数字,该数字就是以差值表达的当前时间。

使用该方法获得的时间不够直观,但是却很方便时间的计算。例如,计算程序运行需要的时间则可以使用如下的代码:

long start = System. currentTimeMillis();

for(int i = 0;i < 100000000;i++){

int a = 0;

}

long end = System. currentTimeMillis();

long  time = end – start;

则这里变量time的值就代表该代码中间的for循环执行需要的毫秒数,使用这种方式可以测试不同算法的程序的执行效率高低,也可以用于后期线程控制时的精确延时实现。

c、exit方法

public static void exit(int status)

该方法的作用是退出程序。其中status的值为0代表正常退出,非零代表异常退出。使用该方法可以在图形界面编程中实现程序的退出功能等。

d、gc方法

public static void gc()

该方法的作用是请求系统进行垃圾回收。至于系统是否立刻回收,则取决于系统中垃圾回收算法的实现以及系统执行时的情况。

e、getProperty方法

public static String getProperty(String key)

该方法的作用是获得系统中属性名为key的属性对应的值。系统中常见的属性名以及属性的作用如下表所示。

属性名列表


属性名


属性说明


java.version


Java 运行时环境版本


java.home


Java 安装目录


os.name


操作系统的名称


os.version


操作系统的版本


user.name


用户的账户名称


user.home


用户的主目录


user.dir


用户的当前工作目录

例如:

String osName = System.getProperty(“os.name”);

String user = System.getProperty(“user.name”);

System.out.println(“当前操作系统是:” + osName);

System.out.println(“当前用户是:” + user);

使用该方法可以获得很多系统级的参数以及对应的值。

时间: 2024-10-08 14:51:36

系统类 System类的相关文章

第1章 Object类 &amp; System类

1.1 Object类1.1.1 概述Object类是Java语言中的根类,即所有类的父类.它中描述的所有方法子类都可以使用.所有类在创建对象的时候,最终找的父类就是Object.在Object类众多方法中,我们先学习equals方法与toString方法,其他方法后面课程中会陆续学到.1.1.2 获取字节码对象的方式1.通过Object类的getClass()方法获取2.通过类名调用属性class来获取 通过Class类的静态方法forName()来获取1.1.2.1 案例代码一 packag

Java常用实体类--System类

字符串.日期.数字是Java程序中最常使用的数据对象,对这些数据的创建.修改.格式化和转换等操作融入在Java程序的每个角落,必须熟练掌握.本节将通过实例演示以下常用实体类 Java系统级类:系统类System.运行时类Runtime Java字符串处理类:字符串类String.字符串分隔符类StringTokenizer.线程安全的可变字符串类StringBuffer.可变字符串类StringBuilder Java日期处理类:日期类Date.日期格式化类DateFormate.日历类Cale

Object类.时间日期类.System类.Stringbuilder类.包装类

Object类 java.lang.Object类是java语言中的根类,即所有类的父类.它中描述的所有方法都可以使用.在对象实例化的时候,最终找的父类就是Object. 如果一个类没有特别指定父类,那么默认则继承自Object类.例如: 自己随便定义的一个类: public void Demo{ //......... } 根据JDK源码和Object类的API文档,Object类当中包含的方法有11个,然后,我只挑选了两个来做重点介绍: public String toString():返回

处理时间的类 —— System类、Date类 、SimpleDateFormat类 与 Calendar类

在我们以往的编程中,就有过通过运行前和运行后时间差来判断时间复杂度的例子,再扯得远一点,我们在C语言中制造随机数的操作,也要用到有关时间的函数.而且,在我们未来的编程中,也会时不时要用到能够读取当前时间的方法,所以,本篇博文所讲解的类,其实还是挺常用的,所以本人专门写一篇博文来为同学们展示下这个类的常用方法的用法 System类: 概述: System 类包含一些有用的类字段和方法.它不能被实例化. 说真的,System类与时间相关的主要原因就是它的一个方法,那么,现在,本人来展示下这个类的常用

System类

System类 System类包含:一些有用的类字段和方法,System类不能被实例化. 成员方法:      (1)public static void gc():运行垃圾回收器(这只做了解)  注意:执行System.gc()前,系统会自动调用finalize()方法清除对象占有的资源,通过super.finalize()方式可以实现从下到上的finalize()方法的调用: 先释放自己的资源,再去释放父类的资源. 不要在程序中频繁的调用垃圾回收,因为每一次执行垃圾回收,jvm都会强制启动垃

JAVA API(二)System类与Runtime类

1.System类与Runtime类 1.1System类 System类对我们来说并不陌生,在之前学习的知识中,当我们需要打印结果时,使用的都是"System.out.println()"语句进行打印输出,这句代码中就使用了System类.这个类中定义了与系统相关的属性和方法,它所提供的属性和方法都是静态的,因此,想要引用这些属性和方法,直接使用System类调用即可.下表是System类常用的一些方法. 方法声明 功能描述 static void exit(int status)

Java入门——System类

Java入门——System类 System类简介 System类是一些与系统相关的属性和方法的集合,而且所有属性都是静态的. 序号 方法定义 类型 描述 1 public static void exit(int static) 普通 系统退出,如果status为非0就表示退出 2 public static void gc() 普通 运行垃圾回收机制,调用的是Runtime类的gc()方法 3 public static long currentTimeMills() 普通 返回以毫秒为单位

Java—System类入门学习

第三阶段 JAVA常见对象的学习 System类 System类包含一些有用的字段和方法,他不能被实例化 //用于垃圾回收 public static void gc() ? //终止正在运行的java虚拟机.参数用作状态码,根据惯例,非0表示异常终止 public static void exit(int status) ? //System.out.println(System.currentTimeMillis()); //返回从1970年1月1日到现在时间的毫秒数(协调时间) publi

[ExtJS学习笔记]第六节 Extjs的类系统Class System命名规则及定义和调试

本文地址: http://blog.csdn.net/sushengmiyan/article/details/38479079 本文作者:sushengmiyan -------------------------------------------------------------资源链接----------------------------------------------------------------------- 翻译来源  Sencha Cmd官方网站:    http: