Java——其他对象


System类
System类不能被实例化,它提供的设施有,标准输入输出流和错误输出流;对外部定义属性和环境变量的访问;加载文件和库的方法;还有快速复制数组的一些方法。

常用字段:

in 标准输入流,默认是键盘;
out 标准输出流,默认是控制台。

常见方法:

void arraycopy() //复制数组
void exit(int status ) // 终止当前Java虚拟机
void gc() //运行垃圾回收器

重点讲的是
String getProperties() //返回当前系统的属性
Properties类属于java.util包,继承自Hashtable类,所以其中的元素都是键值对,键值是属性名,值是属性值。
也可以通过String setProperties()方法来自定义属性。
下面给出代码示例:
import java.util.*;

class SystemDemo
{
	public static void main(String[] args)
	{
		Properties prop = System.getProperties();
		
		System.setProperty("myKey", "myValue");
		String v = System.getProperty("myKey");
		System.out.println(v);
		
		for(Object obj : prop.keySet())
		{
			String value = (String)prop.get(obj);
			
			System.out.println(obj);
			System.out.println(value);
		}
	}
}

Runtime类
Runtime也不可以被实例化,因为它不允许自定义Runtime对象,而是由系统创建。获取当前系统的Runtime对象的方法就是使用这个类提供的静态方法:
Runtime getRuntime()来获取。所以这个类使用的是单例设计模式。
常用方法:
static Runtime getRuntime(); //获取当前系统Runtime类
Process exec(String command) //执行指定命令行
void destroy() //结束当前进程的所有子进程
代码示例:
import java.util.*;

class RuntimeDemo
{
	public static void main(String[] args) throws Exception
	{
		Runtime r = Runtime.getRuntime();
		Process p = r.exec("F:\\kankan\\Program\\XMP.exe 情怨.mp4");
		
		Thread.sleep(5000);
		p.destroy();
	}
}


Date类
Date用来描述当前时间,如果直接输入Date对象,默认格式为:星期 月份 月份天数 小时:分钟:秒数 年份 。也可以自定义时间输出的格式,方法是通过Date子类DateFormat的format()方法来指定模式,也可以通过SimpleDateFormat类来指定时间
代码示例:
import java.util.*;
import java.text.*;

class DateDemo{
	public static void main(String[] args)
	{
		Date d = new Date();
		//将模式封装成到SimpleDateFormat对象中。
		SimpleDateFormat sdf = new SimpleDateFormat("y年M月d日 E H:m:s a ");
		//调用format方法,让模式格式化指定的Date对象。
		
		String time = sdf.format(d);
		System.out.println(time);
	}
}


Calendar类
Calendar类定义了许多字段来获取时间。
常用字段:
      获取年份:Calendar.YEAR
      获取月份:Calendar.MONTH
      获取日期:Calendar.DAY_OF_MONTH
      获取星期:Calendar.DAY_OF_WEEK
      获取小时:Calendar.HOUR_OF_DAY
      获取分钟:Calendar.MINUTE
      获取秒数:Calendar.SECOND
常用方法:
void add(int field, int amount); //给指定字段添加指定时间量。
int get(int field) // 获取指定字段的时间量。
void set(int field, int value) //设置指定字段的时间量。

小练习:
获取任意年的二月有多少天:
   public static int howManyDays(int year)  
    {  
        Calendar c = Calendar.getInstance();  
        c.set(year,2,1);  
        c.add(Calendar.DAY_OF_MONTH,-1);  
        return c.get(Calendar.DAY_OF_MONTH);  
    }  




 Math
Math类中封装了用于数学运算的方法和字段。

常见字段:
      static double E // e(即自然对数的底数)的 double 值
      static double PI //pi(即圆的周长与直径之比)的 double 值。

常见方法:
       double ceil(double d); //向上取整
       double floor(double d); //向下取整
       double pow(double a,double b); //a的b次方
       long round(double b); //b的四舍五入的值
       double random(); //返回大于等于0.0且小于1.0的随机数

Random类:
是一个单独的随机数类,用途和Math.random()相同,但是random()方法比较局限,而Random类可以指定随机数的范围,还可以转成对应的基本数据类型。
示例:
package com.otherObjectDemo;

class MathDemo
{
	public static void main(String[] args)
	{
        double num=Math.random();
        print(num);
        Double d = new Double(num);
        String s = d.toString();
        char[] a = s.toCharArray();

        for(int i = a.length-1; i > a.length-3; i--)
        	print(a[i]);
        
	}
	public static void print( Object obj)
	{
	        System.out.println(obj);
	}
}


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值