首页 > 代码库 > 黑马程序员—System/Runtime/Calendor系统常用类
黑马程序员—System/Runtime/Calendor系统常用类
System/Runtime/Calendor系统常用类
---------android培训 、ava 培训 、期待与您交流! ----------
System类
System
类包含一些有用的类字段和方法。它不能被实例化。
在System
类提供的设施中,有标准输入、标准输出和错误输出流;对外部定义的属性和环境变量的访问;加载文件和库的方法;还有快速复制数组的一部分的实用方法。
System 可以描述系统文件使用的静态方法
staticPrintStream | err |
staticInputStream | in |
staticPrintStream | out |
获得系统属性信息:System.getProperties()
方法摘要 | |
static void | arraycopy(Object src, int srcPos, Object dest, int destPos, int length) |
staticString | clearProperty(String key) |
staticConsole | console() |
static long | currentTimeMillis() |
static void | exit(int status) |
static void | gc() |
staticMap<String,String> | getenv() |
staticString | getenv(String name) |
staticProperties | getProperties() |
staticString | getProperty(String key) |
staticString | getProperty(String key, String def) |
staticSecurityManager | getSecurityManager() |
static int | identityHashCode(Object x) |
staticChannel | inheritedChannel() |
static void | load(String filename) |
static void | loadLibrary(String libname) |
staticString | mapLibraryName(String libname) |
static long | nanoTime() |
static void | runFinalization() |
static void | runFinalizersOnExit(boolean value) |
static void | setErr(PrintStream err) |
static void | setIn(InputStream in) |
static void | setOut(PrintStream out) |
static void | setProperties(Properties props) |
staticString | setProperty(String key, String value) |
static void | setSecurityManager(SecurityManager s) |
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 这个类可以执行与其同与一个计算器的应用程序。
void | addShutdownHook(Thread hook) |
int | availableProcessors() |
Process | exec(String command) |
Process | exec(String[] cmdarray) |
Process | exec(String[] cmdarray, String[] envp) |
Process | exec(String[] cmdarray, String[] envp,File dir) |
Process | exec(String command, String[] envp) |
Process | exec(String command, String[] envp,File dir) |
void | exit(int status) |
long | freeMemory() |
void | gc() |
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() |
日期处理:Date
类Date
表示特定的瞬间,精确到毫秒。
当对一个日期和时间格式化表示可以使用SimpleDateFormat
构造方法摘要 | |
SimpleDateFormat() |
|
SimpleDateFormat(String pattern) |
|
SimpleDateFormat(String pattern, DateFormatSymbols formatSymbols) |
|
SimpleDateFormat(String pattern, Locale locale) |
|
比配的数据类型
日期和时间模式 | 结果 |
“yyyy.MM.dd G ‘at’ HH:mm:ss z” | 2001.07.04 AD at 12:08:56 PDT |
“EEE, MMM d, ‘’yy” | Wed, Jul 4, ‘01 |
“h:mm a” | 12:08 PM |
“hh ‘o’’clock’ a, zzzz” | 12 o’clock PM, Pacific Daylight Time |
“K:mm a, z” | 0:08 PM, PDT |
“yyyyy.MMMMM.dd GGG hh:mm aaa” | 02001.July.04 AD 12:08 PM |
“EEE, d MMM yyyy HH:mm:ss Z” | Wed, 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 |
static int | DAY_OF_WEEK |
static int | DAY_OF_WEEK_IN_MONTH |
static int | DAY_OF_YEAR |
例子:
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));//得到一年第几个星期
}
}
---------android培训 、ava 培训 、期待与您交流! ----------
黑马程序员—System/Runtime/Calendor系统常用类