----------- android培训、java培训、java学习型技术博客、期待与您交流! ------------
Java程序在不同操作系统上运行时,要取的平台相关的属性,或者通过一些平台命令来完成一些功能,Java 中的System类和Runtime类来与运行的平台交互。
相信在学毕老师视频的同学对这段代码很熟悉:
import java.util.*;
public class SystemDemo
{
public static void main(String[] args)
{
Properties prop=System.getProperties();//确定当前的系统属性。
// Set<K> keySet() 返回此映射中包含的键的 Set 视图。
// V get(Object key) 返回指定键所映射到的值
//Properties是Hashtable的子类,也就是Map集合的一个子类对象
//可以通过map的方法取出该集合的元素
// System.setProperty("myKey","myValue");//在系统中自定义一些特有信息
// String getvalue=System.getProperty("java.runtime.version");//获取指定属性信息(java运行的版本)
// System.out.println("Value="+getvalue);
for(Object obj:prop.keySet())
{
String value=(String)prop.get(obj);
System.out.println(obj+"-------:"+value);
}
}
}
运行结果 写道
java.runtime.name-------:Java(TM) SE Runtime Environment
sun.boot.library.path-------:D:\TDDOWNLOAD\java\jre\bin
java.vm.version-------:20.0-b01
java.vm.vendor-------:Sun Microsystems Inc.
java.vendor.url-------:http://java.sun.com/
path.separator-------:;
java.vm.name-------:Java HotSpot(TM) Client VM
file.encoding.pkg-------:sun.io
user.country-------:CN
sun.java.launcher-------:SUN_STANDARD
sun.os.patch.level-------:
java.vm.specification.name-------:Java Virtual Machine Specification
user.dir-------:D:\TDDOWNLOAD\javawork\System,Math,Runtime对象\SystemDemo
java.runtime.version-------:1.7.0-ea-b113
java.awt.graphicsenv-------:sun.awt.Win32GraphicsEnvironment
java.endorsed.dirs-------:D:\TDDOWNLOAD\java\jre\lib\endorsed
os.arch-------:x86
java.io.tmpdir-------:C:\Users\ADMINI~1\AppData\Local\Temp\
line.separator-------:
java.vm.specification.vendor-------:Sun Microsystems Inc.
user.variant-------:
os.name-------:Windows 7
sun.jnu.encoding-------:GBK
java.library.path-------:D:\TDDOWNLOAD\java\bin;.;C:\Windows\Sun\Java\bin;C:\Windows\system32;C:\Windows;C:\Windows\system32;C:\Windows;C:\Windows\System32\Wbem;C:\Windows\System32\WindowsPowerShell\v1.0\;E:\Win7系统封装资料\[3]优化及设置\Windows7优化大师 V1.66 绿色版\;D:\TDDOWNLOAD\java\bin;
java.specification.name-------:Java Platform API Specification
java.class.version-------:51.0
sun.management.compiler-------:HotSpot Client Compiler
os.version-------:6.1
user.home-------:C:\Users\Administrator
user.timezone-------:
java.awt.printerjob-------:sun.awt.windows.WPrinterJob
file.encoding-------:GBK
java.specification.version-------:1.7
java.class.path-------:D:\TDDOWNLOAD\javawork\System,Math,Runtime对象\SystemDemo;D:\TDDOWNLOAD\java\jre\lib\rt.jar;D:\TDDOWNLOAD\java\lib\dt.jar;D:\TDDOWNLOAD\java\lib\tools.jar;D:\TDDOWNLOAD\java\jre\lib\ext\dnsns.jar;D:\TDDOWNLOAD\java\jre\lib\ext\sunec.jar;D:\TDDOWNLOAD\java\jre\lib\ext\sunjce_provider.jar;D:\TDDOWNLOAD\java\jre\lib\ext\sunmscapi.jar;D:\TDDOWNLOAD\java\jre\lib\ext\sunpkcs11.jar;D:\TDDOWNLOAD\java\jre\lib\ext\localedata.jar
user.name-------:Administrator
java.vm.specification.version-------:1.0
java.home-------:D:\TDDOWNLOAD\java\jre
sun.arch.data.model-------:32
user.language-------:zh
java.specification.vendor-------:Sun Microsystems Inc.
awt.toolkit-------:sun.awt.windows.WToolkit
java.vm.info-------:mixed mode, sharing
java.version-------:1.7.0-ea
java.ext.dirs-------:D:\TDDOWNLOAD\java\jre\lib\ext;C:\Windows\Sun\Java\lib\ext
sun.boot.class.path-------:D:\TDDOWNLOAD\java\jre\lib\resources.jar;D:\TDDOWNLOAD\java\jre\lib\rt.jar;D:\TDDOWNLOAD\java\jre\lib\sunrsasign.jar;D:\TDDOWNLOAD\java\jre\lib\jsse.jar;D:\TDDOWNLOAD\java\jre\lib\jce.jar;D:\TDDOWNLOAD\java\jre\lib\charsets.jar;D:\TDDOWNLOAD\java\jre\lib\modules\jdk.boot.jar;D:\TDDOWNLOAD\java\jre\classes
java.vendor-------:Sun Microsystems Inc.
file.separator-------:\
java.vendor.url.bug-------:http://java.sun.com/cgi-bin/bugreport.cgi
sun.io.unicode.encoding-------:UnicodeLittle
sun.cpu.endian-------:little
sun.desktop-------:windows
sun.cpu.isalist-------:pentium_pro+mmx pentium_pro pentium+mmx pentium i486 i386 i86
其中一些系统属性我们很熟悉,System类还提供获取系统所有环境变量的方法,System.getenv()看下系统变量和系统属性有什么不同,供黑马的学员对比学习一下。
import java.util.*;
public class TestSystem
{
public static void main(String[] args)
{
Map<String,String> env=System.getenv();//获取系统所有的环境变量
for(String name:env.keySet())
{
System.out.println(name+"---------->"+env.get(name));
}
}
}
运行结果对比: 写道
--------------------配置: <默认>--------------------
USERPROFILE---------->C:\Users\Administrator
ProgramData---------->C:\ProgramData
PATHEXT---------->.COM;.EXE;.BAT;.CMD;.VBS;.VBE;.JS;.JSE;.WSF;.WSH;.MSC
JAVA_HOME---------->D:\TDDOWNLOAD\java\
TEMP---------->C:\Users\ADMINI~1\AppData\Local\Temp
SystemDrive---------->C:
ProgramFiles---------->C:\Program Files
Path---------->C:\Windows\system32;C:\Windows;C:\Windows\System32\Wbem;C:\Windows\System32\WindowsPowerShell\v1.0\;E:\Win7系统封装资料\[3]优化及设置\Windows7优化大师 V1.66 绿色版\;D:\TDDOWNLOAD\java\bin;
HOMEDRIVE---------->C:
PROCESSOR_REVISION---------->170a
=C:---------->C:\Program Files\JCreator Pro\CodeSnippets
_DFX_INSTALL_UNSIGNED_DRIVER---------->1
USERDOMAIN---------->PC-20111018DMXJ
ALLUSERSPROFILE---------->C:\ProgramData
DEVMGR_SHOW_DETAILS---------->1
PROCESSOR_IDENTIFIER---------->x86 Family 6 Model 23 Stepping 10, GenuineIntel
SESSIONNAME---------->Console
TMP---------->C:\Users\ADMINI~1\AppData\Local\Temp
CommonProgramFiles---------->C:\Program Files\Common Files
=::---------->::\
LOGONSERVER---------->\\PC-20111018DMXJ
PROCESSOR_ARCHITECTURE---------->x86
FP_NO_HOST_CHECK---------->NO
OS---------->Windows_NT
HOMEPATH---------->\Users\Administrator
PROCESSOR_LEVEL---------->6
1830B7BD-F7A3-4c4d-989B-C004DE465EDE---------->c4:f71da8
=D:---------->D:\TDDOWNLOAD\javawork\System,Math,Runtime对象
LOCALAPPDATA---------->C:\Users\Administrator\AppData\Local
COMPUTERNAME---------->PC-20111018DMXJ
windir---------->C:\Windows
SystemRoot---------->C:\Windows
NUMBER_OF_PROCESSORS---------->2
USERNAME---------->Administrator
PUBLIC---------->C:\Users\Public
PSModulePath---------->C:\Windows\system32\WindowsPowerShell\v1.0\Modules\
ComSpec---------->C:\Windows\system32\cmd.exe
APPDATA---------->C:\Users\Administrator\AppData\Roaming
处理已完成。
Runtime类
Runtime类代表java程序的运行环境,每个Java程序都有一个与之对应的Runtime实例,通过该对象与运行环境相连
可以访问JVM的相关信息,如处理器数量(我的机子是双核的,数量为2),内存信息等
public class RuntimeDemo
{
public static void main(String[] args) throws Exception
{
Runtime rt=Runtime.getRuntime();
System.out.println("总内存数:"+rt.totalMemory());
System.out.println("处理器数量:"+rt.availableProcessors());
rt.exec("notepad.exe");//运行记事本程序
}
}
这里直接启动一条进程来运行操作系统命令
java还提供了一些常用类,如:String、Math等,在此不赘述了。
----------- android培训、java培训、java学习型技术博客、期待与您交流! ------------
分享到:
相关推荐
行时所需要的基本条件和许多 Java 基础类,例如,IO 类、GUI 控件类、网络类等。JRE 是提供给 普通用户使用的,如果你只想运行别人开发好的 Java 程序,那么,你的计算机上必须且只需安装 JRE。 JDK(Java ...
Android面试宝典包含两个宝典: 1【黑马项目宝典】虐面试官神器之必备黑马程序员项目宝典V1.1 内容包括:(1)电子商城(2)ListView系列(3)图像处理(4)动画效果(5)控件大全(6)新闻资讯(7)生活相关(8)...
黑马程序员Qt入门教程的相关文档。1 Qt概述 3 1.1 什么是Qt 3 1.2 Qt的发展史 4 1.3 支持的平台 4 1.4 Qt版本 4 1.5 Qt的安装 5 Linux Host 5 OS X Host 5 Windows Host 5 1.6 Qt的优点 5 2 创建Qt项目 6 2.1 使用...
黑马程序员——Android移动开发源码
java程序员简历-14套(含高级工程师,项目经理,架构师等相关经验)java程序员简历-14套(含高级工程师,项目经理,架构师等相关经验)java程序员简历-14套(含高级工程师,项目经理,架构师等相关经验)java程序员...
Vibrator手机震动服务 - 小小程序员 - 博客频道 - CSDN.pdf,太多无法一一验证是否可用,程序如果跑不起来需要自调,部分代码功能进行参考学习。
本书主要包括总体介绍部分、爬虫部分、自然语言处理部分、全文检索部分以及相关案例分析。爬虫部分介绍了网页遍历方法和如何实现增量抓取,并介绍了从网页等各种格式的文档中提取主要内容的方法。自然语言处理部分从...
黑马程序员的Spring框架的第四天的资料,包含了资料,代码,截图和当前这堂课的笔记
官网下载 Begin Your Download To begin your download,...mysql-connector-java-5.1.23.zip MD5: 1a6cbbfccab7884134471992005fe0f9 Size: 3.7M Signature java编程eclipse和myeclipse链接mysql的jar包与相关文档
最新下载的 阿里云短信服务器所需jar包之一,... <artifactId>aliyun-java-sdk-core <version>3.2.2 如此引用即可,更多关于阿里云短信发送相关请参考http://blog.csdn.net/niaoer2010/article/details/78036664
selenium-java-2.44.0、selenium-java-2.45.0、selenium-java-2.53.0不同版本的jar包
计算机后端-Java-Java核心基础-第22章 常用类 18. 其它日期时间相关API的使用.avi
人力资源—简历—程序员—模板,主要从人员基本信息、教育背景、校园经历、工作经历、个人技能及自我评价方面进行展示,内容中特别突出了与JAVA相关的信息例如:1.熟悉Spring、SpringMVC、MyBatis、Springboot等开发...
Java二进制IO类与文件复制操作实例,好像是一本书的例子,源代码有的是独立运行的,与同目录下的其它代码文件互不联系,这些代码面向初级、中级Java程序员。 Java访问权限控制源代码 1个目标文件 摘要:Java源码,...
内容:微信支付-工具类,包含微信退款,微信支付,微信相关V2版本V3接口集成 适用人群:JAVA 使用场景:集成好微信支付,可自由调整相关类,自由编写业务场景 说明: 将工具类导入该自行项目,将maven-jar 的配置...
郑某某-Java-乐驰_嵌入式_java简历_程序员简历模板_计算机相关专业.doc
余x-java3年-武汉_嵌入式_java简历_程序员简历模板_计算机相关专业.doc
设计模式-java版,内部包含相关类图,和相关模式的演进,希望可以帮到上进的你
总结的所有关于面试相关的话术,对标Java中高级开发工程师