一、介绍
天天说用System.out.println()来输出,那么我有个小问题想请教,out是一个变量还是一个内部类呢?大型而系统的知识都有各种专题来详解,这些散碎的知识点我们也不能忽视,否则面试的时候被问到这么简单的问题,答不上来,就很尴尬了。
System作为系统类,在JDK的java.lang包中,可见它也是一种java的核心语言特性。System类的构造器由private修饰,不允许被实例化。因此,类中的方法也都是static修饰的静态方法。
二、知识点介绍
1、System类概念
2、System类常见方法
3、System类注意事项
三、上课对应视频的说明文档
1、概念
在API中System类介绍的比较简单,我们给出定义,System中代表程序所在系统,提供了对应的一些系统属性信息,和系统操作。
2、System类常见方法
public static void gc() //用来运行JVM中的垃圾回收器,完成内存中垃圾的清除
public static void exit(int status) //用来结束正在运行的Java程序。参数传入一个数字即可。通常传入0记为正常状态,其他为异常状态
public static long currentTimeMillis() //获取当前系统时间与1970年01月01日00:00点之间的毫秒差值
public static Properties getProperties() //用来获取指定键(字符串名称)中所记录的系统属性信息
import java.util.Calendar;
import java.util.Date;
import java.util.Properties;
/*
* public static void gc() //回收垃圾
* public static void exit(int status) //退出程序,0为正常状态,其他为异常状态
* public static long currentTimeMillis() //获取当前时间毫秒值
* public static Properties getProperties() //获取某个属性信息
*/
public class Demo_System {
public static void main(String[] args) {
//构造方法被私有 不能创建对象
//System sy = new System();
//public static void exit(int status) //退出程序,0为正常状态,其他为异常状态
// System.out.println("我要退出了!");
// System.exit(0);
// System.out.println("我已经退出了!");
//public static long currentTimeMillis() //获取当前时间毫秒值
long timeMillis = System.currentTimeMillis();
long time = new Date().getTime();
long timeInMillis = Calendar.getInstance().getTimeInMillis();
System.out.println(timeMillis);
for (int i = 0; i < 1000; i++) {
System.out.println("i love java");
}
long timeMillis2 = System.currentTimeMillis();
System.out.println(timeMillis2-timeMillis);
//public static Properties getProperties() //获取某个属性信息
Properties properties = System.getProperties();
System.out.println(properties);
}
}
3、注意事项
System类不能手动创建对象,因为构造方法被private修饰,阻止外界创建对象。System类中的都是static方法,类名访问即可。在JDK中,有许多这样的类。