JavaCookbook-2.Java的运行环境
Java运行时依赖于运行环境工作,可以通过System来了解系统的运行情况。另外还有Java.lang.system类和Java.awt.Toolkit类。 获得环境变量,代码为System.out.println(System.getenv("PATH"));。这个语句,只能用在获取许可的环境,不适用于受限环境(applet)。获得系统属性的方法为System.getPropertie()或者System.getProperties()。前一个方法取值时,支持设置默认值的情况。注意System类有一个静态的Properties成员,其内容包括操作系统的属性。可以使用java编译时执行Java –dname=valueclassname的方法来附加系统属性值。
[html]
D:\www.gongqingkui.cn\javaCookbook\bin>java-Dname=zzz p2_1
System.getProperty("java.specification.version"):1.6
System.getProperty("name"):zzz
使用System.getProperties().list(System.out);可以列举出所有系统属性,本机在window xp上进行的操作结果为:
[html] view plaincopy
-- listingproperties --
java.runtime.name=Java(TM)SE Runtime Environment
sun.boot.library.path=C:\ProgramFiles\Java\jre1.6.0_04\bin
java.vm.version=10.0-b19
java.vm.vendor=SunMicrosystems Inc.
java.vendor.url=http://java.sun.com/
path.separator=;
java.vm.name=JavaHotSpot(TM) Client VM
file.encoding.pkg=sun.io
user.country=CN
sun.java.launcher=SUN_STANDARD
sun.os.patch.level=ServicePack 3
java.vm.specification.name=JavaVirtual Machine Specification
user.dir=D:\www.gongqingkui.cn\javaCookbook
java.runtime.version=1.6.0_04-b12
java.awt.graphicsenv=sun.awt.Win32GraphicsEnvironment
java.endorsed.dirs=C:\ProgramFiles\Java\jre1.6.0_04\lib...
os.arch=x86
java.io.tmpdir=C:\DOCUME~1\ADMINI~1.WWW\LOCALS~1\Temp\
line.separator=
java.vm.specification.vendor=SunMicrosystems Inc.
user.variant=
os.name=WindowsXP
sun.jnu.encoding=GBK
java.library.path=C:\ProgramFiles\Java\jre1.6.0_04\bin...
java.specification.name=JavaPlatform API Specification
java.class.version=50.0
sun.management.compiler=HotSpotClient Compiler
os.version=5.1
user.home=C:\Documentsand Settings\Administrat...
user.timezone=
java.awt.printerjob=sun.awt.windows.WPrinterJob
file.encoding=utf-8
java.specification.version=1.6
user.name=gqk
java.class.path=D:\www.gongqingkui.cn\javaCookbook\bin
java.vm.specification.version=1.0
sun.arch.data.model=32
java.home=C:\ProgramFiles\Java\jre1.6.0_04
java.specification.vendor=SunMicrosystems Inc.
user.language=zh
awt.toolkit=sun.awt.windows.WToolkit
java.vm.info=mixedmode, sharing
java.version=1.6.0_04
java.ext.dirs=C:\ProgramFiles\Java\jre1.6.0_04\lib...
sun.boot.class.path=C:\ProgramFiles\Java\jre1.6.0_04\lib...
java.vendor=SunMicrosystems Inc.
file.separator=\
java.vendor.url.bug=http://java.sun.com/cgi-bin/bugreport...
sun.cpu.endian=little www.zzzyk.com
sun.io.unicode.encoding=UnicodeLittle
sun.desktop=windows
sun.cpu.isalist=
编写JDK版本相关的代码:使用Class.forName()来加载待使用的类文件,这种测试必须在主程序流程中较早进行才可以。
编写与操作系统相关的代码:以Unix和windows为例,它们在处理文件分隔符等情况上情况不同。可以使用静态变量或者封装的file来进行跨操作系统代码编写。
使用扩展包或者其他API包时,将代码包放在JDKHOME/jre/lib/ext下。
补充:软件开发 , Java ,