Files
hutool/hutool-system/src/main/java/cn/hutool/system/JvmSpecInfo.java
2021-01-20 17:10:45 +08:00

74 lines
2.2 KiB
Java
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
package cn.hutool.system;
import java.io.Serializable;
/**
* 代表Java Virutal Machine Specification的信息。
*/
public class JvmSpecInfo implements Serializable{
private static final long serialVersionUID = 1L;
private final String JAVA_VM_SPECIFICATION_NAME = SystemUtil.get("java.vm.specification.name", false);
private final String JAVA_VM_SPECIFICATION_VERSION = SystemUtil.get("java.vm.specification.version", false);
private final String JAVA_VM_SPECIFICATION_VENDOR = SystemUtil.get("java.vm.specification.vendor", false);
/**
* 取得当前JVM spec.的名称(取自系统属性:<code>java.vm.specification.name</code>)。
*
* <p>
* 例如Sun JDK 1.4.2<code>"Java Virtual Machine Specification"</code>
* </p>
*
* @return 属性值如果不能取得因为Java安全限制或值不存在则返回<code>null</code>。
*
*/
public final String getName() {
return JAVA_VM_SPECIFICATION_NAME;
}
/**
* 取得当前JVM spec.的版本(取自系统属性:<code>java.vm.specification.version</code>)。
*
* <p>
* 例如Sun JDK 1.4.2<code>"1.0"</code>
* </p>
*
* @return 属性值如果不能取得因为Java安全限制或值不存在则返回<code>null</code>。
*
*/
public final String getVersion() {
return JAVA_VM_SPECIFICATION_VERSION;
}
/**
* 取得当前JVM spec.的厂商(取自系统属性:<code>java.vm.specification.vendor</code>)。
*
* <p>
* 例如Sun JDK 1.4.2<code>"Sun Microsystems Inc."</code>
* </p>
*
* @return 属性值如果不能取得因为Java安全限制或值不存在则返回<code>null</code>。
*
*/
public final String getVendor() {
return JAVA_VM_SPECIFICATION_VENDOR;
}
/**
* 将Java Virutal Machine Specification的信息转换成字符串。
*
* @return JVM spec.的字符串表示
*/
@Override
public final String toString() {
StringBuilder builder = new StringBuilder();
SystemUtil.append(builder, "JavaVM Spec. Name: ", getName());
SystemUtil.append(builder, "JavaVM Spec. Version: ", getVersion());
SystemUtil.append(builder, "JavaVM Spec. Vendor: ", getVendor());
return builder.toString();
}
}