黑马程序员—System/Runtime/Calendor系统常用类

System/Runtime/Calendor系统常用类

---------android培训
ava 培训  、期待与您交流! ----------

System类

System类包含一些有用的类字段和方法。它不能被实例化。

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

System 可以描述系统文件使用的静态方法


static
PrintStream


err

“标准”错误输出流。


static
InputStream


in

“标准”输入流。


static
PrintStream


out

“标准”输出流。

获得系统属性信息:System.getProperties()


方法摘要


static void


arraycopy(Object
src, int srcPos, Object dest, int destPos, int length)

从指定源数组中复制一个数组,复制从指定的位置开始,到目标数组的指定位置结束。


static
String


clearProperty(String
key)

移除指定键指示的系统属性。


static
Console


console()

返回与当前 Java 虚拟机关联的唯一 Console 对象(如果有)。


static long


currentTimeMillis()

返回以毫秒为单位的当前时间。


static void


exit(int status)

终止当前正在运行的 Java 虚拟机。


static void


gc()

运行垃圾回收器。


static
Map<String,String>


getenv()

返回一个不能修改的当前系统环境的字符串映射视图。


static
String


getenv(String
name)

获取指定的环境变量值。


static
Properties


getProperties()

确定当前的系统属性。


static
String


getProperty(String
key)

获取指定键指示的系统属性。


static
String


getProperty(String
key, String def)

获取用指定键描述的系统属性。


static
SecurityManager


getSecurityManager()

获取系统安全接口。


static int


identityHashCode(Object
x)

返回给定对象的哈希码,该代码与默认的方法 hashCode() 返回的代码一样,无论给定对象的类是否重写 hashCode()。


static
Channel


inheritedChannel()

返回从创建此 Java 虚拟机的实体中继承的信道。


static void


load(String
filename)

从作为动态库的本地文件系统中以指定的文件名加载代码文件。


static void


loadLibrary(String
libname)

加载由 libname 参数指定的系统库。


static
String


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)

将系统属性设置为 Properties 参数。


static
String


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()

向 Java 虚拟机返回可用处理器的数目。


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)

通过启动虚拟机的关闭序列,终止当前正在运行的 Java 虚拟机。


long


freeMemory()

返回 Java 虚拟机中的空闲内存量。


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()

返回子进程的出口值。


abstract
InputStream


getErrorStream()

获取子进程的错误流。


abstract
InputStream


getInputStream()

获取子进程的输入流。


abstract
OutputStream


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 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

*/

publicclass
TestDate {

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

get 和 set 的字段数字,指示一个月中的某天。


static int


DAY_OF_WEEK

get 和 set 的字段数字,指示一个星期中的某天。


static int


DAY_OF_WEEK_IN_MONTH

get 和 set 的字段数字,指示当前月中的第几个星期。


static int


DAY_OF_YEAR

get 和 set 的字段数字,指示当前年中的天数。

 

例子:

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 培训  、期待与您交流! ----------

时间: 2024-11-05 22:43:17

黑马程序员—System/Runtime/Calendor系统常用类的相关文章

黑马程序员-Foundation-结构体与常用类(一)

------- IOS培训.android培训.java培训.期待与您交流! ---------- 结构体: 有如下结构体: NSRange,NSPoint/CGPoint,NSSize/CGSize,NSRect/CGRect 注意点:CG开头的结构体一般属于CoreGraphics框架 1.NSRange(表示范围) 参数:location(位置),length(长度) 1 NSRange r1 = {2,3} ; // 表示从2开始,3个长度 2 NSRange r2 = NSMakeRa

【黑马程序员】————Foundation框架02常用类—字符类

------Java培训.Android培训.iOS培训..Net培训.期待与您交流! ------- 常用类 NSString ->NSMutableString NSArray ->NSMutableArray NSSet ->NSMutableSet NSDictionary ->NSMutableDictionary NSDate NSObject 字符类-NSString/NSMutableString NSString : 不可变字符串  NSMutableString

【黑马程序员】————Foundation框架02常用类—集合类

NSArray ->NSMutableArray NSSet ->NSMutableSet NSDictionary ->NSMutableDictionary 1.NSArray/NSMutableArray NSArray :不可变数组 NSMutableArray : 可变数组 基本使用 1 void use() 2 { 3 /* 4 C数组对比 5 int a = 5; 6 7 int ages[10] = {1, 90, 89, 17}; 8 9 Person *p = [[P

黑马程序员_银行业务调度系统

1,项目的具体需求 银行业务调度系统 模拟实现银行业务调度系统逻辑,具体需求如下: 银行内有6个业务窗口,1 - 4号窗口为普通窗口,5号窗口为快速窗口,6号窗口为VIP窗口. 有三种对应类型的客户:VIP客户,普通客户,快速客户(办理如交水电费.电话费之类业务的客户). 异步随机生成各种类型的客户,生成各类型用户的概率比例为: VIP客户 :普通客户 :快速客户 = 1 :6 :3.   客户办理业务所需时间有最大值和最小值,在该范围内随机设定每个VIP客户以及普通客户办理业务所需的时间,快速

黑马程序员——Java基础---集合框架工具类

黑马程序员——Java基础<a href="http://www.itheima.com" target="blank">Java培训.Android培训.iOS培训..Net培训</a>.期待与您交流! ------ 一.概述 Java为操作Set.List和Map提供了一系列工具类,主要有Collections和Arrays.这两个工具类的特点:类中的方法都是静态的,不需要创建对象,直接使用类名调用即可.Collections:是集合对象

黑马程序员——java——Runtime类使用

例如要打开一个文件的内容: import java.io.IOException; import java.util.Properties; import java.util.Set; public class StstemDemos { public static void main(String[] args) throws Exception { //method1(); method2(); } private static void method2() throws Exception

【黑马程序员】————Foundation框架01常用结构体

NSRange(location length) NSPoint\CGPoint NSSize\CGSize NSRect\CGRect (CGPint CGSize) 1.NSRange(location length) 1 void range() 2 { 3 // @"i love oc" // love的范围 4 5 //NSRange r1 = {2, 4}; // 不用 6 //NSRange r2 = {.location = 2, .length = 4};// 不用

黑马程序员——Java基础---IO(三)--File类、Properties类、打印流、序列流(合并流)

------<a href="http://www.itheima.com" target="blank">Java培训.Android培训.iOS培训..Net培训</a>.期待与您交流! ------- File类 一.概述 1.File类:文件和目录路径名的抽象表现形式 2.特点: 1)用来将文件或文件夹封装成对象 2)方便于对文件与文件夹的属性信息进行操作,因此是对流操作的一种补充 3)File类的实例是不可变的:也就是说,一旦创建,

黑马程序员——【Java基础】——File类、Properties集合、IO包中的其他类

---------- android培训.java培训.期待与您交流! ---------- 一.File类 (一)概述 1.File类:文件和目录路径名的抽象表现形式 2.作用: (1)用来将文件或文件夹封装成对象 (2)方便于对“文件”与“文件夹属性信息”进行操作 (3)File对象,可以作为参数传递给流的构造函数 (二)构造方法 * 通过File的构造函数创建File对象 方式1:File f = new File("c:\\a.txt"); 方式2:File f2 = newF