System 类 和 Runtime 类的常用用法介绍

System类的常用用法
1,主要获取系统的环境变量信息


代码如下:

public static void sysProp()throws Exception{
  Map<String,String> env = System.getenv();
  //获取系统的所有环境变量
  for(String name : env.keySet()){
   System.out.println(name + " : " +env.get(name));
  }
  //获取系统的指定环境变量的值
  System.out.println(env.get("JAVA_HOME"));

//获取系统的所有属性
  Properties prop = System.getProperties();
  //将系统的属性保存到配置文件中去
  prop.store(new FileOutputStream("Prop.properties"),"System properties");
  //输出特定的系统属性
  System.out.println(System.getProperty("os.name"));
 }

2,与系统时间有关的方法操作


代码如下:

public static void sysTime(){
  //获取系统当前的时间毫秒currentTimeMillis()(返回当前时刻距离UTC 1970.1.1 00:00的时间差)
  Long time = System.currentTimeMillis();
  System.out.println(time);

Long time1 = System.nanoTime();//主要用于计算时间差单位纳秒
  Long time3 = System.currentTimeMillis();
  for(Long i =0l ;i <999l; i++){}
  Long time2 = System.nanoTime();
  Long time4 = System.currentTimeMillis();
  System.out.println(time2 - time1+ " : " +(time4 - time3));
 }

3,鉴别两个对象在堆内存当中是否是同一个


代码如下:

public static void identityHashCode(){
  //str1 str2为两个不同的String对象
  String str1 = new String("helloWorld");
  String str2 = new String("helloWorld");
  //由于String类重写了hashCode()方法 所以 他们的HashCode是一样的
  System.out.println(str1.hashCode()+" : "+str2.hashCode());
  //由于他们不是同一个对象所以他们的计算出来的HashCode时不同的。
  //实际上该方法使用的时最原始的HashCode计算方法即Object的HashCode计算方法
  System.out.println(System.identityHashCode(str1) + " : "+ System.identityHashCode(str2));
  String str3 = "hello";
  String str4 = "hello";
  //由于他们引用的是常量池中的同一个对象 所以他们的HashCode是一样的
  System.out.println(System.identityHashCode(str3) + " : "+ System.identityHashCode(str4));
  /*输出如下
   -1554135584 : -1554135584
   28705408 : 6182315
   21648882 : 21648882
  */
 }

Runtime类的常用用法
每个 Java 应用程序都有一个 Runtime 类实例,使应用程序能够与其运行的环境相连接。


代码如下:

class RunTimeTest
{
 public static void main(String[] args) throws Exception
 {
  getJvmInfo();
  //execTest();
 }
 public static void getJvmInfo(){
  //获取Java运行时相关的运行时对象
  Runtime rt = Runtime.getRuntime();
  System.out.println("处理器数量:" + rt.availableProcessors()+" byte");
  System.out.println("Jvm总内存数 :"+ rt.totalMemory()+" byte");
  System.out.println("Jvm空闲内存数: "+ rt.freeMemory()+" byte");
  System.out.println("Jvm可用最大内存数: "+ rt.maxMemory()+" byte");
 }
 public static void execTest()throws Exception{
  Runtime rt = Runtime.getRuntime();
  //在单独的进程中执行指定的字符串命令。
  rt.exec("mspaint E:\\mmm.jpg");
 }
}

(0)

相关推荐

  • java system类使用方法示例 获取系统信息

    常用的方法: 复制代码 代码如下: long currentTimeMillis();  获取当前时间的毫秒值 void exit();终止当前正在运行的 Java 虚拟机. 复制代码 代码如下: public static void Method(){     long l = System.currentTimeMillis();     System.out.println(l); System.exit(); } 描述系统属性信息:Properties System.getPropert

  • System 类 和 Runtime 类的常用用法介绍

    System类的常用用法1,主要获取系统的环境变量信息 复制代码 代码如下: public static void sysProp()throws Exception{  Map<String,String> env = System.getenv();  //获取系统的所有环境变量  for(String name : env.keySet()){   System.out.println(name + " : " +env.get(name));  }  //获取系统的

  • Java Math类、Random类、System类及BigDecimal类用法示例

    本文实例讲述了Java Math类.Random类.System类及BigDecimal类用法.分享给大家供大家参考,具体如下: Math类 Math的方法 package cn.itcast_01; /* * Math:用于数学运算的类. * 成员变量: * public static final double PI * public static final double E * 成员方法: * public static int abs(int a):绝对值 * public static

  • Java Runtime类详解_动力节点Java学院整理

    一.概述 Runtime类封装了运行时的环境.每个 Java 应用程序都有一个 Runtime 类实例,使应用程序能够与其运行的环境相连接.一般不能实例化一个Runtime对象,应用程序也不能创建自己的 Runtime 类实例,但可以通过 getRuntime 方法获取当前Runtime运行时对象的引用.一旦得到了一个当前的Runtime对象的引用,就可以调用Runtime对象的方法去控制Java虚拟机的状态和行为. 当不被信任的代码调用任何Runtime方法时,常常会引起SecurityExc

  • Java基本类型包装类概述与Integer类、Character类用法分析

    本文实例讲述了Java基本类型包装类概述与Integer类.Character类用法.分享给大家供大家参考,具体如下: 基本类型包装类概述 将基本数据类型封装成对象的好处在于可以在对象中定义更多的功能方法操作该数据. 常用的操作之一:用于基本数据类型与字符串之间的转换. 基本类型和包装类的对应 Byte,Short,Integer,Long,Float,Double,Character,Boolean Integer类 为了让基本类型的数据进行更多的操作,Java就为每种基本类型提供了对应的包装

  • Java数字格式类(NumberFormat类和DecimalFormat类)用法详解

    目录 Java数字格式类 NumberFormat类 1.基本介绍 2.使用案例 3.应用场景 DecimalFormat类 1.基本介绍 2.使用案例 总结 Java数字格式类 以下两个类可用于格式化和解析数字: java.text.NumberFormat java.text.DecimalFormat NumberFormat类 1.基本介绍 NumberFormat 类可以将一个数值格式化为符合某个国家地区习惯的数值字符串,也可以将符合某个国家地区习惯的数值字符串解析为对应的数值. Ja

  • Java并发编程中使用Executors类创建和管理线程的用法

    1. 类 Executors Executors类可以看做一个"工具类".援引JDK1.6 API中的介绍:   此包中所定义的 Executor.ExecutorService.ScheduledExecutorService.ThreadFactory 和 Callable 类的工厂和实用方法.此类支持以下各种方法: (1)创建并返回设置有常用配置字符串的 ExecutorService 的方法. (2)创建并返回设置有常用配置字符串的 ScheduledExecutorServi

  • python类继承与子类实例初始化用法分析

    本文实例讲述了python类继承与子类实例初始化用法.分享给大家供大家参考.具体分析如下: [ 先贴参考书籍原文(中文英文对照)] __init__方法介绍: If a base class has an __init__() method the derived class's __init__() method must explicitly call it to ensure proper initialization of the base class part of the insta

  • php类中的各种拦截器用法分析

    本文实例讲述了php类中的各种拦截器用法.分享给大家供大家参考.具体用法分析如下: 1.__get( $property ) 访问未定义的属性时调用 复制代码 代码如下: class lanjie  {      function __get($name)      {          echo $name." property not found! ";      }  } $ob = new lanjie();  echo $ob->g; 当我们调用对象$ob未定义的属性g

  • Java中的日期和时间类以及Calendar类用法详解

    Java日期和时间类简介 Java 的日期和时间类位于 java.util 包中.利用日期时间类提供的方法,可以获取当前的日期和时间,创建日期和时间参数,计算和比较时间. Date 类 Date 类是 Java 中的日期时间类,其构造方法比较多,下面是常用的两个: Date():使用当前的日期和时间初始化一个对象. Date(long millisec):从1970年01月01日00时(格林威治时间)开始以毫秒计算时间,计算 millisec 毫秒.如果运行 Java 程序的本地时区是北京时区(

  • 基于java Files类和Paths类的用法(详解)

    Java7中文件IO发生了很大的变化,专门引入了很多新的类: import java.nio.file.DirectoryStream; import java.nio.file.FileSystem; import java.nio.file.FileSystems; import java.nio.file.Files; import java.nio.file.Path; import java.nio.file.Paths; import java.nio.file.attribute.

随机推荐