System类
类中的方法和属性都是静态的。
重要方法:获取系统属性信息:Properties getProperties();
因为Properties是Hashtable的子类,也就是Map集合的一个子类对象。那么可以通过map的方法取出该集合中的元素。该集合中存储都是字符串。没有泛型定义。
例子:
/*
获取系统属性信息、添加系统属性信息、临时添加系统属性、获取指定系统属性信息(如OS信息)
*/
import java.util.*;
class PropertiesDemo
{
public static void main(String[] args)
{
Properties prop=System.getProperties();//获取系统属性信息,并将这些信息存储到Properties集合(HashTable)中。
for(Object obj:prop.keySet())
{
String value=(String)prop.get(obj);
System.out.println(obj+"----"+value);
}
System.setProperty("yooo","hooo");//给系统属性信息集添加具体的属性信息
String value=System.getProperty("os.name");//获取指定属性的信息,重要!利用此可以判定OS类型
System.out.println("value:"+value);
/*临时添加方式:运行jvm时,可以通过jvm的参数进行系统属性的临时设置,
可以在java命令的后面加入 –D<key>=<value> 例如:java –Dmyname=hahaha 类名。
*/
String va=System.getProperty("myname");
System.out.println("va:"+va); //如果java –Dmyname=hahaha 会输出hahaha
}
}
Runtime类
类中没有构造方法,不能创建对象。但是有非静态方法。说明该类中应该定义好了对象,并可以通过一个static方法获取这个对象。
这个方法就是 static Runtime getRuntime();---------------------单例设计模式实例。
每个 Java 应用程序都有一个 Runtime
类实例,使应用程序能够与其运行的环境相连接。
例子:
class RuntimeDemo
{
public static void main(String[] args) throws Exception
{
Runtime r=Runtime.getRuntime();
r.exec("D:\\新浪微博\\Weibo2012\\Bin\\Weibo2014.exe"); //运行程序
Thread.sleep(4000);
r.destroy(); //杀掉进程
}
}
Math类
用于数学运算的工具类,属性和行为都是静态的。该类是final不允许继承。
static double ceil(double a) ; //返回大于指定数值的最小整数--向上取整
static double floor(double a) ; //返回小于指定数值的最大整数--向下取整
static long round(double a) ; //四舍五入成整数
static double pow(double a, double b) ; //a的b次幂
static double random(); //返回0~1的伪随机数
double d =Math.floor(Math.random()*10+1); //返回1~10的伪随机整数
Date类
Date类是util包中的。
例子:
import java.util.*;
import java.text.*;
class DateDemo
{
public static void main(String[] args)
{
Date d=new Date();
System.out.println(d); //输出的时间格式不理想
SimpleDateFormat sdf=new SimpleDateFormat("yyyy年MM月dd日,HH:mm:ss"); //自定义时间格式对象,需要导入text包
String date=sdf.format(d);//将给定的Date格式化为日期/时间字符串
System.out.println(date);
}
}