System/Runtime/Calendor系统常用类

System类

System类包含一些有用的类字段和方法。它不能被实例化。
在System类提供的设施中,有标准输入、标准输出和错误输出流;对外部定义的属性和环境变量的访问;加载文件和库的方法;还有快速复制数组的一部分的实用方法。
System 可以描述系统文件使用的静态方法

System 读取系统在加载信息数据
例子1

importjava.util.Properties;

/**
 * System得到静态的方法和静态属性
 *@author dell
 *
 */
publicclass TestSystem {
  publicstaticvoid main(String[] args) {
     Properties properties = System.getProperties();
     //Properties 也是hashTanle的子类
     System.out.println("系统名称" + properties.get("os.name"));//系统名称
     for(Object obj:properties.keySet()){
       System.out.println(obj.toString());//打印系统在加载所获得的属性信息
     }
  }
}

运行结果,打印出系统信息
系统名称Windows 7

java.runtime.name //运行环境
sun.boot.library.path //sun lib 路径
java.vm.version //虚拟机版本
java.vm.vendor
java.vendor.url
path.separator
java.vm.name //虚拟机名字
file.encoding.pkg
user.country
user.script
sun.java.launcher
sun.os.patch.level
java.vm.specification.name
user.dir
java.runtime.version
java.awt.graphicsenv
java.endorsed.dirs
os.arch
java.io.tmpdir
line.separator
java.vm.specification.vendor
user.variant
os.name//系统名称
sun.jnu.encoding
java.library.path
java.specification.name
java.class.version
sun.management.compiler
os.version
user.home//用户
user.timezone
java.awt.printerjob
file.encoding
java.specification.version
java.class.path
user.name
java.vm.specification.version
sun.java.command
java.home
sun.arch.data.model
user.language
java.specification.vendor
awt.toolkit
java.vm.info
java.version
java.ext.dirs
sun.boot.class.path
java.vendor
file.separator
java.vendor.url.bug
sun.io.unicode.encoding
sun.cpu.endian
sun.desktop
sun.cpu.isalist

RunTime类

每个 Java 应用程序都有一个Runtime类实例,使应用程序能够与其运行的环境相连接。可以通过getRuntime方法获取当前运行时。Java程序是跨平台的,Runtime 这个类可以执行与其同与一个计算器的应用程序。

Runtime 打开电脑程序上程序

packageorg.nagi.base;
importjava.io.IOException;
/**
 * Runtime对象
 *该类是没有构造方法的
 *不能new 只能经静态方法得到
 *可以执行我们电脑里面程序
 *每个 Java 应用程序都有一个 Runtime类实例,
 *使应用程序能够与其运行的环境相连接。可以通过 getRuntime方法获取当前运行时。
 *@author dell
 */
publicclass ThreadTest {
  publicstaticvoid main(String[] args)throws IOException {
     //说明Runtime是单利模式
     Runtime runtime = Runtime.getRuntime();
     //调用runtime对象执行计算机上的程序
  Process p = runtime.exec("C:\\ProgramFiles\\KuGou\\KGMusic\\KuGou.exe");
     //p.destroy();杀死进程
  }
}

注:当Runtime 对象去程序找应用程序时,它首先是去环境变量里面找,如果是找不到的话会报出IO异常。

进程类 Process

abstract void
destroy()
  杀掉子进程。
abstract int
exitValue()
  返回子进程的出口值。
abstractInputStream
getErrorStream()
  获取子进程的错误流。
abstractInputStream
getInputStream()
  获取子进程的输入流。
abstractOutputStream
getOutputStream()
  获取子进程的输出流。
abstract int
waitFor()

导致当前线程等待,如有必要,一直要等到由该 Process 对象表示的进程已经终止。

日期处理:Date
类Date表示特定的瞬间,精确到毫秒。

当对一个日期和时间格式化表示可以使用SimpleDateFormat

构造方法摘要
SimpleDateFormat()
  用默认的模式和默认语言环境的日期格式符号构造  SimpleDateFormat。

SimpleDateFormat(String pattern) 
  用给定的模式和默认语言环境的日期格式符号构造  SimpleDateFormat。

SimpleDateFormat(String pattern, DateFormatSymbols formatSymbols)
  用给定的模式和日期符号构造 SimpleDateFormat。

SimpleDateFormat(String pattern, Locale locale)
  用给定的模式和给定语言环境的默认日期格式符号构造  SimpleDateFormat。

比配的数据类型

日期和时间模式
结果

“yyyy.MM.dd G ‘at’ HH:mm:ss z”
2001.07.04 AD at 12:08:56 PDTEEE, MMM d, ‘’yy”
Wed, Jul 4, ‘01h:mm a”
12:08 PM
“hh ‘o’’clock’ a, zzzz”
12 o’clock PM, Pacific Daylight TimeK:mm a, z”
0:08 PM, PDT
“yyyyy.MMMMM.dd GGG hh:mm aaa”
02001.July.04 AD 12:08 PMEEE, d MMM yyyy HH:mm:ss ZWed, 4 Jul 2001 12:08:56 -0700
“yyMMddHHmmssZ"
010704120856-0700
"yyyy-MM-dd'T'HH:mm:ss.SSSZ"
2001-07-04T12:08:56.235-0700

例子:

import java.text.SimpleDateFormat;
importjava.util.Date;
/**
 * java日期处理
 *@author dell
*/
publicclassTestDate {
  publicstaticvoid main(String[] args) {
  Date d = new Date();//定义一个日期对象
  SimpleDateFormat s = new SimpleDateFormat("yyyy年MM月dd日HH:mm:ss");//格式话一个日期对象
  System.out.println(s.format(d));//对日期对象进行必配

  }
}

取得某年某月某日:使用Calender对象来获取
取得日期字段:

 YEAR + MONTH +DAY_OF_MONTH
 YEAR + MONTH +WEEK_OF_MONTH + DAY_OF_WEEK
 YEAR + MONTH +DAY_OF_WEEK_IN_MONTH + DAY_OF_WEEK
 YEAR + DAY_OF_YEAR
 YEAR + DAY_OF_WEEK+ WEEK_OF_YEAR

对于时间字段:

 HOUR_OF_DAY
 AM_PM + HOUR
Calendar 的使用
Calendar 提供了一个类方法getInstance,以获得此类型的一个通用的对象。Calendar 的getInstance 方法返回一个 Calendar 对象,其日历字段已由当前日期和时间初始化:
     Calendar rightNow = Calendar.getInstance();
rightNow.get(//静态方法)

static int
DAY_OF_MONTH
  getset 的字段数字,指示一个月中的某天。
static int
DAY_OF_WEEK
  getset 的字段数字,指示一个星期中的某天。
static int
DAY_OF_WEEK_IN_MONTH
  getset 的字段数字,指示当前月中的第几个星期。
static int
DAY_OF_YEAR
  getset 的字段数字,指示当前年中的天数。

例子:

importjava.util.Calendar;

/**
 *得到日期某年某月某日
 *使用Calendar来取得
 *@author dell
 */
publicclass TestCalendar {
  publicstaticvoid main(String[] args) {

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

   Calendar rightNow = Calendar.getInstance();//格式话一个日期对象
      rightNow.set(2014, 8, 1);
      rightNow.add(Calendar.MONTH, 10);//日期的加法

      rightNow.add(Calendar.MONTH, -8);//日期的减法

      int index = rightNow.get(Calendar.MONTH);
     System.out.println(rightNow.get(Calendar.YEAR) + mos[index]+rightNow.get(Calendar.DAY_OF_MONTH));//得到一年第几个星期
  }
}
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值