您的位置:首页 > 职场人生

黑马程序员Java基础__其他对象

2013-09-14 14:25 483 查看
----------------------
ASP.Net+Android+IO开发S、.Net培训、期待与您交流! ----------------------

一、其他对象

一、System类

一)概述:
System类中的方法和属性都是静态的,System类是描述系统一些信息的类,不可以实例化,也无构造函数。
      in  :标准输入流,默认是键盘。
      out:标准输出流,默认是控制台。
二)方法:
1、获取系统的属性信息: Properties getProperties();

2、获取指定属性信息:String System.getProperty(String key);

3、在系统内定义特有信息:  void System.setProperty(String key,String value);

示例1:

    String s = getProperty("os.name"); 
    System.out.println("os.name|:" + s); 
    System.setProperty("name----:","xixi"); 
    System.out.println("-------------------------"); 
    String v = System.getProperty("myName"); 
    System.out.println("v = " + v); 
    Properties pop = System.getProperties(); 
    for(Object obj : pop.keySet()) 
    { 
        String value = (String)pop.get(obj); 
        out.println(obj + ":" + value); 
    }


二、Runtime 类

一)理解:

1、该类并未提供构造函数:说明不可以new对象,那么会直接想到该类中的方法都是静态的。

2、该类中还有非静态方法:说明该类中肯定会提供方法获取该类对象,并且该方法是静态的,且返回值类型是该类类型。由这个特点可以看出该类使用了单例设计模式。

二)方法:

1、获取本类对象: static Runtime getRuntime();

2、在单独的进程中执行指定字符串命令:Process exec(String command):在单独的进程中执行指定的字符串命令。 

      这是一个很有用的方法。对于 exec(command) 形式的调用而言,其行为与调用 exec(command, null,
null) 完全相同。 

示例2:

class RuntimeDemo
{
public static void main(String[] args) throws IOException,InterruptedException
{
Runtime r=Runtime.getRuntime();
Process p=r.exec("D:\\duowan\\yy-5\\YY.exe");//启动
Thread.sleep(4000);//等待4秒
p.destroy();//杀掉子进程

}
}


三  、日期类

一)Date类

1、格式化模式具体步骤:

1)创建Date对象。

2)将模式封装到SimpleDateFormat对象中。

3)调用format方法让模式格式化指定Date对象。

示例3:

import java.util.*;
class  DateDemo
{
public static void main(String[] args)
{
Date d=new Date();//创建打印的对象
System.out.println(d);//打印的时间看不懂.希望能有些格式
//想让打印的有年月日.这样看起来很好.方法是在Date类中另请参见中
SimpleDateFormat sdf=new SimpleDateFormat("yyy年MM月dd日 hh:mm:ss");
//调用format方法让模式格式化指定的Date对象.
String time =sdf.format(d);
System.out.println(time);
}
}


二)Calendar类

1、设置时间:

1)为给定的日历字段添加或减去指定的时间值:   --->   void add(int field,int amount);

2)获取指定的日历字段对应的时间值:                  --->   int get(int field);

3)将给定日历字段对应的时间值设置为给定值:  --->   void set(int field,int value);

      设置日历字段 YEAR、MONTH和DAY_OF_MONTH的值: --->   void set(int year,int month,int date);

示例4:

Calendar:日历类 在util包中
java.util 包抽象类,通过静态方法static Calendar getInstance();,返回本类实例对象
构造函数供子类使用。
获取方法
import java.util.*;
import java.text.*;

class  CalendarDemo
{
public static void main(String[] args)
{
Calendar c=Calendar.getInstance();

//sop(c);

//查表法
String[] mons = {"一月","二月","三月","四月","五月","六月",
"七月","八月","九月","十月","十一月","十二月"};

4000
String[] weeks = {"","星期日","星期一","星期二","星期三",
"星期四","星期五","星期六"};
int index = c.get(Calendar.MONTH);//使用查表法获取大写的月份

int index1= c.get(Calendar.DAY_OF_WEEK);//使用查表法获取大写的星期数

sop(c.get(Calendar.YEAR)+"年");//打印年

sop(mons[index]);//打印月份

sop(c.get(Calendar.DAY_OF_MONTH)+"日");//打印日

sop(weeks[index1]);//打印星期.
}
public static void sop(Object obj)
{
System.out.println(obj);
}
}


四、Math类

1、方法:
1)double ceil(double d)      --->   返回大于指定数据的最小整数。

2)double floor(double d)    --->   返回小于指定数据的最大整数。
3)double pow(double a,double b)         --->   返回a的b次方。

4)double/float round(double/float m)    --->   返回m四舍五入的值。
5)double random()    --->   返回正号的double值,是一个 0<=X<1.0 的随机数X。

示例5:
import java.util.*;
class MathDemo
{
public static void main(String[] args)
{
Random r=new Random();//util包中的Random类也有随机方法等
for(int x=0;x<10;x++)
{
//
int d=r.nextInt(1000);//随机数.util包中的Random类
//int d=(int)(Math.random()*1000);  //math包中的随机方法
sop(d);
}
}
public static void show()
{
double d=Math.ceil(16.34);//ceil返回大于指定该数据的最小整数.
double d1=Math.floor(12.34);//floor返回小于指定数据的最大整数.

long l=Math.round(12.54);//四舍五入.

sop("d="+d);
sop("d1="+d1);
sop("l="+l);

int d2=(int)(Math.pow(2,3));//pow   2的3次幂
sop("d2="+d2);
}
public static void sop(Object obj)
{
System.out.println(obj);
}
}


----------------------
ASP.Net+Android+IO开发S、.Net培训、期待与您交流! ----------------------
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: