Java中有一个System.getProperty("")的使用,以前一直没用过,今天偶然看到了,查了写资料总结下:
System类包含了一些有用的类字段和方法,不能被实例化。
System类提供了标准输入、标准输出和错误输出流;访问外部定义的属性和环境变量;加载文件和库文件的一种手段,快速复制数组的一部分的使用方法。
具体到System.getProperty(String key)方法,就是获取指定的key所代表的系统属性。
首先如果有安全管理器security manager,那么就会以key为参数,调用安全管理器的checkPropertyAccess 方法,这可能导致安全异常SecurityException。
如果没有当前设置的系统属性,首先创建并为方法getProperties以相同的方式初始化系统属性。
具体实现可以查看源代码。
这里可以获取的属性有52个,我的的是环境是window7 + jre1.6 其中有些属性值是根据操作系统、jre版本的不同而有所差异.
注:有些属性我也不知道怎么用汉语说明或者具体的含义
java运行时环境名称 | java.runtime.name | Java(TM) SE Runtime Environment |
java虚拟机启动所需库路径 | sun.boot.library.path | C:\Program Files\Java\jdk1.6.0_20\jre\bin |
java虚拟机版本 | java.vm.version | 16.3-b01 |
java虚拟机供应商 | java.vm.vendor | Sun Microsystems Inc. |
java虚拟机供应商url | java.vendor.url | http://java.sun.com/ |
路径分隔符 | path.separator | ; |
java虚拟机名称 | java.vm.name | Java HotSpot(TM) Client VM |
java平台文件编码包(不确定) | file.encoding.pkg | sun.io |
sun.java.launcher | SUN_STANDARD | |
用户所在国家 根据操作系统决定 | user.country | CN |
sun.os.patch.level | Service Pack 1 | |
java.vm.specification.name | Java Virtual Machine Specification | |
用户当前工作目录 | user.dir | D:\MyEclipse 8.5\FileTest |
java运行时环境版本 | java.runtime.version | 1.6.0_20-b02 |
java.awt.graphicsenv | sun.awt.Win32GraphicsEnvironment | |
java.endorsed.dirs | C:\Program Files\Java\jdk1.6.0_20\jre\lib\endorsed | |
os.arch | x86 | |
java输入输出的临时保存目录 | java.io.tmpdir | C:\Users\MFW\AppData\Local\Temp\ |
line.separator | \n | |
java虚拟机具体供应商 | java.vm.specification.vendor | Sun Microsystems Inc. |
用户变种(不确定) | user.variant | 空的 |
操作系统名称 | os.name | Windows 7 |
sun.jnu.encoding | GBK | |
java库文件路径 | java.library.path | C:\Program Files\Java\jdk1.6.0_20\bin;.; 等等 |
java具体名称 | java.specification.name | Java Platform API Specification |
java类版本 | java.class.version | 50.0 |
编译器 | sun.management.compiler | HotSpot Client Compiler |
操作系统版本 | os.version | 6.1 |
用户目录 | user.home | C:\Users\XXX |
用户时区 | user.timezone | 空的 |
java.awt.printerjob | sun.awt.windows.WPrinterJob | |
文件编码 | file.encoding | UTF-8 |
java具体版本 | java.specification.version | 1.6 |
项目类路径 | java.class.path | D:\MyEclipse 8.5\FileTest\bin |
当前登录用户名 | user.name | XXX |
java虚拟机具体版本 | java.vm.specification.version | 1.0 |
java根目录 | java.home | C:\Program Files\Java\jdk1.6.0_20\jre |
sun.arch.data.model | 32 | |
用户语言 | user.language | zh |
java具体供应商 | java.specification.vendor | Sun Microsystems Inc. |
awt.toolkit | sun.awt.windows.WToolkit | |
java虚拟机信息 | java.vm.info | mixed mode, sharing |
java版本 | java.version | 1.6.0_20 |
java.ext.dirs | C:\Program Files\Java\jdk1.6.0_20\jre\lib\ext;C:\Windows\Sun\Java\lib\ext | |
sun.boot.class.path | C:\Program Files\Java\jdk1.6.0_20\jre\lib\resources.jar 等等 | |
java供应商 | java.vendor | Sun Microsystems Inc. |
文件分隔符 | file.separator | \ |
java供应商bug提交url | java.vendor.url.bug | http://java.sun.com/cgi-bin/bugreport.cgi |
sun.io.unicode.encoding | UnicodeLittle | |
sun.cpu.endian | little | |
桌面 | sun.desktop | windows |
cpu信息 | sun.cpu.isalist | pentium_pro+mmx pentium_pro pentium+mmx pentium i486 i386 i86 |
相关推荐
System.out.println("可用的JIT编译器:\n" + System.getProperty("java.compiler")); ``` 如果存在即时编译器(JIT),则返回其名称,否则返回`null`。 #### 11. 获取扩展目录 ```java System.out.println("扩展...
opencv_java342.dylib opencv 库 mac 下可用 引用 static{ System.load(System.getProperty("user.dir")+"/src/main/resources/opencv_java342.dylib"); }
Java系统属性主要存储在`System`类中的`Properties`对象里,通过调用`System.getProperties()`方法可以获得所有系统属性的集合。系统属性通常包含以下几类信息: - **操作系统信息**:如操作系统名称(`os.name`)、...
- `getProperty(String key)`根据键获取对应的值。 - 常见的键如`"os.name"`、`"os.arch"`、`"os.version"`分别代表操作系统名称、构架和版本号。 #### 六、总结 通过以上介绍,我们可以看到Java提供了多种方式来...
3. **输入/输出(I/O)**:在Java中,标准输入输出和错误输出是通过`System.out`、`System.in`和`System.err`来实现的。`System.out`是一个`PrintStream`实例,用于向标准输出设备(通常是显示器)写数据,支持`...
2. **准备Java类库**:如果DLL文件与特定的Java类库关联,则需要确保该类库(例如文中提到的`AAbean.jar`)可用,并且已正确添加到项目的类路径中。 #### 三、部署DLL文件 部署DLL文件是调用它的关键步骤之一。...
请注意,这个方法只能在用户界面可用时工作,如果Java应用是在服务器环境或者没有图形界面的环境中运行,可能会抛出`UnsupportedOperationException`。 对于“我的文档”目录,Java标准库没有提供直接的方法来获取...
在Java开发中,特别是在Web应用开发中,经常需要获取不同类型的路径,例如:当前Web应用的路径、特定文件的真实路径等。本文将详细讲解如何通过不同的方式来获取这些路径。 #### JSP中获取路径 1. **获取当前应用...
在Java编程语言中,获取电脑信息是一项常见的任务,可以用于监控系统状态、日志记录或者创建自定义的应用程序。这个“java获取电脑信息demo”很可能包含一个或多个示例,展示了如何利用Java API来获取关于操作系统、...
`FileOutputStream`是Java中用于将数据写入`File`对象或文件系统中的一个字节输出流。它可以用来创建新文件或将数据追加到现有文件的末尾。 ### 2. 使用`FileOutputStream`向文件写入数据 #### 示例代码分析 ```...
### Java中Scanner类的用法详解 #### 一、引言 `Scanner`类作为Java SDK 1.5中引入的新特性,为开发者提供了一种简单直观的方式来读取用户输入和解析文本文件中的数据。相比于之前的`StringTokenizer`和`Matcher`类...
### Java中Scanner类的用法 #### 一、概述 `Scanner`类是Java标准库中的一个类,属于`java.util`包的一部分。它在Java 5.0版本被引入,目的是为了简化输入输出控制的过程,相较于传统的输入输出流控制(如`...
若需获取特定属性值,可以使用`System.getProperty(String name)`方法。此外,我们可以在运行Java程序时通过`-D`选项设置新的系统属性,如`java -DmyProperty=MyValue Test9_2`。 Properties类是Java中用于存储键值...
jacob-1.18 包含jacob-1.18-x64.dll jacob-1.18-x86.dll 亲测可用: 下面为转pdf使用方法 package com.pdf.doctopdf.pdf; import com.jacob.activeX.ActiveXComponent; import com.jacob.com.Dispatch; import ...
在Java中,我们可以使用`com.sun.management.OperatingSystemMXBean`接口来获取硬盘序列号,但这个接口属于Oracle JDK的非标准扩展,可能在某些JRE环境中不可用。以下是一个示例代码: ```java import ...
根据给定的信息,我们可以深入探讨如何使用 Java 编程实现一个类似于 Windows 98 系统中的 ABOUT 窗口。虽然原文档是基于 VB 6.0 的示例,但我们将采用 Java 语言来重新构思这个功能。下面将详细介绍如何在 Java 中...
Java中的System类是java.lang包下的一个类,它提供了一系列与系统相关的方法。System类无法被实例化,也不能被继承,它所提供的方法可以用来获取系统属性、环境变量、内存信息以及执行垃圾回收等操作。本文将通过...
例如,当需要从网络下载较大图像时,应先调用`System.gc()`触发垃圾回收,随后通过`Runtime.getRuntime().freeMemory()`检查当前可用内存。如果内存不足,应向用户发出警告而非直接导致程序崩溃,确保用户体验。 ``...
在Java编程中,获取MAC(Media Access Control)地址是一项常见的任务,尤其是在需要识别网络接口或设备身份的场景下。MAC地址是一个物理地址,通常用于标识网络上的硬件设备。本文将详细介绍如何在Java中获取MAC...
通过调用`System.getProperty("user.dir")`方法,可以直接得到Java虚拟机启动时的工作目录,也就是当前工作路径。 下面是一个完整的Java代码示例,演示了如何获取系统路径下的字体列表,检索一个指定目录(例如"E:\...