`
k_lb
  • 浏览: 799600 次
  • 性别: Icon_minigender_1
  • 来自: 郑州
社区版块
存档分类
最新评论
  • kitleer: 据我所知,国内有款ETL调度监控工具TaskCTL,支持ket ...
    kettle调度

JAVA Runtime System

阅读更多

静态方法: public static Runtime getRuntime()

实际上可以通过Runtime 类直接运行本机的程序


package org.systemdemo;

import java.io.IOException;

public class systemdemo01 {

	/**
	 * @param args
	 * @throws exception 
	 */
	public static void main(String[] args) throws Exception {
		// TODO Auto-generated method stub
		Runtime run = Runtime.getRuntime(); //单例设置
		Process proc = run.exec("calc.exe"); //执行程序
		Thread.sleep(2000); //看2秒
		proc.destroy(); //销毁
	}

}

可以让指定的程序,进行自动的关闭,exec()方法返回一个Process 类的实例,表示一个进程的对象

如果要想关闭,则使用此类中: public abstract void destroy()


Runtime 取得系统信息


package org.systemdemo;

public class runtimedeom01 {

	/**
	 * @param args
	 */
	public static void main(String[] args) {
		// TODO Auto-generated method stub
		Runtime run = Runtime.getRuntime();
		System.out.println(run.maxMemory()); //最大可用内存
		System.out.println(run.freeMemory()); //空亲的内存空间
		System.out.println(run.totalMemory()); //总共内存空间
		
		String name ="Hello";
		
		for (int i=0;i<1000;i++){
			name +=i;
		}

		System.out.println(run.maxMemory());
		System.out.println(run.freeMemory());
		System.out.println(run.totalMemory());
		
	}

}


垃圾回收


package org.systemdemo;

public class runtimedeom01 {

	/**
	 * @param args
	 */
	public static void main(String[] args) {
		// TODO Auto-generated method stub
		Runtime run = Runtime.getRuntime();
		System.out.println(run.maxMemory()); //最大可用内存
		System.out.println(run.freeMemory()); //空亲的内存空间
		System.out.println(run.totalMemory()); //总共内存空间
		
		String name ="Hello";
		
		for (int i=0;i<1000;i++){
			name +=i;
		}
		System.out.println("--------------------");
		System.out.println(run.maxMemory());
		System.out.println(run.freeMemory());
		System.out.println(run.totalMemory());
		
		System.gc(); //垃圾回收
		
		System.out.println("--------------------");
		System.out.println(run.maxMemory());
		System.out.println(run.freeMemory());
		System.out.println(run.totalMemory());		
		
	}

}


System 类

System 类是一个系统类,例如:System.out.println()就是类中提供的操作


取得计算时间

使用此类可以取得计算的时间

public static long currentTimeMillis()


package org.systemdemo;

public class SystemDemo02 {

	/**
	 * @param args
	 */
	public static void main(String[] args) {
		// TODO Auto-generated method stub
		long begin = System.currentTimeMillis();
		
		String name ="Hello";
		
		for (int i=0;i<50000;i++){
			name +=i;
		}		
		
		long end = System.currentTimeMillis();
		
		System.out.println((end-begin)/1000);
	}

}

System 与垃圾收集

在System 类中存在一个gc()方法:

public static void gc()

调用此方法实际上就是调用了Runtime类中的gc()方法

如果一个对象不用的话则就有可能进行垃圾的收集,但是如果一个对象在被收集前需要做一些收尾工作


在Object 类中存在一个方法,此方法将在对象被回收前调用:

protected void finalize() throws Throwable


package org.systemdemo;

class Person{
	private String name;
	
	public Person(String name){
		this.setName(name);
	}
	
	public void setName(String name){
		this.name = name;
	}
	
	public String getName(){
		return this.name;
	}
	
	public String toString(){
		return "name:"+this.name;
	}
	
	public void finalize() throws Throwable{
		System.out.println("我被回收了"+this);
	}
}

public class SystemDemo03 {

	/**
	 * @param args
	 */
	public static void main(String[] args) {
		// TODO Auto-generated method stub
		Person per = new Person("张三");
		System.out.println(per);
		per = null; //取消引用 
		System.gc(); //强制进行垃圾收集
	}

}



分享到:
评论

相关推荐

    Java Runtime Environment (JRE) 5.0 Update 21

    Installation notes for the J2SE Runtime Environment 5.0 (JRE), including system requirements and installation instructions, are available for the following platforms. Platform 32-bit Installation 64...

    Instrumentation of Java Bytecode for Runtime Analysis

    This paper describes JSpy, a system for high-level instrumentation of Java bytecode and its use with JPaX, our system for runtime analysis of Java programs. JPaX monitors the execution of temporal ...

    Java on z/OS

    Agenda Java runtime environments on z/OS Java SDK 5 and 6 Java System Resource Integration Java Backend Integration Java development for z/OS

    Java深度历险(简体中文版)

    然而时至今日,并没有任何一本书详细地解释Java 2 SDK以及JRE(Java Runtime Environment)如何相互配合,让Java程序畅行无阻;也没有一本书解释Java编译器在编译Java程序时的细节;更没有一本书告诉您Java程序如何与...

    Java编程单词汇总,分25天

    Java 运行环境(Java Runtime Environment) 3、JVM abbr. Java 虚拟机(Java Virtual Machine) 4、system ['sɪstəm] System n. 制度,系统; 5、out [aʊt] adj. 外面的;出去 6、println n. 换行打印...

    Java英语单词.pdf

    Java 运行环境(Java Runtime Environment) 3. JVM abbr. Java 虚拟机(Java Virtual Machine) 4. system ['sɪstəm] System n. 制度,系统; 5. out [aʊt] adj. 外面的;出去 6. println n. 换行打印...

    MongoDB权威指南(中文版).zip

    Which Java package do I need?Software Developers: JDK (Java SE Development Kit). For Java Developers. Includes a complete JRE plus... Contains everything required to run Java applications on your system.

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

    主要介绍了System 类 和 Runtime 类的常用用法,有需要的朋友可以参考一下

    最全java面试题及答案

    JRE:Java Runtime Environment 的简称,Java 运行环境,为 Java 的运行提供了所需环境。 具体来说 JDK 其实包含了 JRE,同时还包含了编译 Java 源码的编译器 Javac,还包含了很多 Java 程序调试和分析的工具。简单...

    系统监控软件Sigar-System_Runtime.zip

    源码说明com.system.runtime  |-common  | |-SystemRuntime.java  | 操作实体类  |-pojo  | |-systemStatusPojo.java  | 存储系统实时状态的po  |-service  | |-systemStatusService.java  |...

    java深度历险

    Java在企业端(Enterprise)与嵌入式系统(Embedded System,手机与PDA等)上扮演举足轻重的角色。而这些出色的应用,都是因为架色在一个稳定的根基——Java 2 SDK(Software Dovelopment Kit)之上。然而时至今日,...

    UML Editor 3.5.7源代码

    For the current version of ili2c, you will need a JRE (Java Runtime Environment) installed on your system, version 1.4.1 or later. The JRE (Java Runtime Environment) can be downloaded for free from ...

    java7帮助文档

    Oracle has two products that implement Java Platform Standard Edition (Java SE) 7: Java SE Development Kit (JDK) 7 and Java SE Runtime Environment (JRE) 7. JDK 7 is a superset of JRE 7, and contains ...

    Java基础知识点总结.docx

    &lt;java.lang&gt;Runtime 90 &lt;java.lang&gt;Math 90 &lt;java.lang&gt;.Date:日期类,月份从0—11 92 &lt;java.lang&gt; Calendar:日历类 93 十六、 IO流:用于处理设备上数据 ★★★★★ 94 IO流的概念 95 字符流与字节流 98 流对象 ...

    java基础知识技术总结

    java.lang.System.gc();?/?java.lang.Runtime.gc(); 垃圾回收的建议语句,只能建议而不能强制回收 滨意: System.gc(); 是静态方滕,可直接踃用。 java.lang.Runtime.gc(); 不是静态方滕,不能直接在main方滕里踃用 ...

    Java精华(免费版)

    所有的checked exception是从java.lang.Exception类衍生出来的,而runtime exception则是从java.lang.RuntimeException或java.lang.Error类衍生出来的。   它们的不同之处表现在两方面:机制上和逻辑上。   一...

    Java开发详解.zip

    031102_【第11章:Java常用类库】_Runtime类笔记.pdf 031103_【第11章:Java常用类库】_国际化程序笔记.pdf 031104_【第11章:Java常用类库】_System类笔记.pdf 031105_【第11章:Java常用类库】_日期操作类(Date、...

    Java 9 Revealed: For Early Adoption and Migration

    Java 9 Revealed is for experienced Java programmers looking to make the migration from Java 7 or Java 8 to ...system introduced in Java 9 and how to use the JShell tool in Java 9 for quick prototyping....

    Java 高级特性.doc

    @Retention(RetentionPolicy.RUNTIME) //在运行是加载Annotation到JVM中 public @interface MyAnnotation { public String value() default "yellow"; public int[] array() default {1,2}; public Meta...

    java连接sap接口包sapjco3

    java连接sap系统需要通过sap javaconnect来连接,对于sapjco...d)这步很重要,若只是执行java最简单的main方法倒没影响,若是plugin工程,必须配置classpath,具体是找到fragment.xml中的runtime将sapjco.jar加载进来。

Global site tag (gtag.js) - Google Analytics