The class used for the interaction with the run time environment of Java is called run time class in Java which provides several methods such as Runtime.getRuntime(), exit(int status), addShutdownHook(Thread hook), Process exec(String command) throws an input-output exception, availableProcessors(), freeMemory(), totalMemory(), etc. for process execution, for invoking GC, to obtain the total memory, to obtain the free memory, etc. whose declaration is public class Runtime extends object and only one application of Java can use only one instance of java.lang.Runtime class and a singleton instance of Runtime class is returned using Runtime.getRuntime() method in Java.
There are several methods of Java Runtime Class. They are:
Start Your Free Software Development Course
Web development, programming languages, Software testing & others
An instance of the Run time class is returned using the Runtime getRuntime() method. Consider the below Java program to demonstrate the Runtime getRuntime() method of the Java Run time class.
Code:
//a class called program is defined public class program { //main method is called public static void main(String[] args) { // The current runtime in association with process is obtained using getRuntime method. Runtime roll = Runtime.getRuntime(); // The current free memory for the current runtime is obtained using freeMemory() method. System.out.println("The current free memory for the current runtime is" + roll.freeMemory()); } }
Output:
Explanation: In the above program, a class called program is defined. Then the main method is called. Then The current runtime in association with the process is obtained using getRuntime method. Then The current free memory for the current runtime is obtained using freeMemory() method.
The current virtual machine is terminated using the Runtime exit(int status)method. Consider the below Java program to demonstrate the exit(int status) method of the Java Run time class.
Code:
//a class called program is defined public class program { //main method is called public static void main(String[] args) { //the current runtime or program is caused to exit using exit(int status) method Runtime.getRuntime().exit(0); //This statement is not executed because the program is terminated by the usage of exit(int status) method above System.out.println("Checking if the program executes this statement depsite the use of exit(int status) method"); } }
Output:
The output of the above program is blank.
Explanation: In the above program, a class called program is defined. Then the main method is called. Then the current runtime or program is caused to exit using the exit(int status) method. Then the statement is not executed because the program is terminated by the usage of the exit(int status) method in the above statement.
A new hook thread is registered usingaddShutdownHook(Thread Hook)method. Consider the below Java program to demonstrate the addShutdownHook(Thread Hook)method of the Java Run time class.
Code:
//a class called program is defined public class program { // when the program is about to exit, this class extending the thread is called static class Mess extends Thread { public void run() { System.out.println("The program is going to exit"); } } //main method is called public static void main(String[] args) { try { //the class mess is registered as shut down hook Runtime.getRuntime().addShutdownHook(new Mess()); //The thread is made to sleep for certain seconds System.out.println("Five seconds of waiting time for the program to exit"); Thread.sleep(5); } catch (Exception ex) { ex.printStackTrace(); } } }
Output:
Explanation: In the above program, a class called program is defined. When the program is about to exit, this class extending the thread is called. Then the main method is called. Then the class mess is registered as shut down the hook. Then the thread is made to sleep for certain seconds.
The given command is executed in a separate process using Process exec(String command) throws IOExceptionmethod. Consider the below Java program to demonstrate Process exec(String command) throws IOExceptionmethod of Java Run time class
Code:
//a class called program is defined public class program { //main method is called public static void main(String[] args) { try { // a process is created to execute google chrome Process proc = Runtime.getRuntime().exec("google-chrome"); System.out.println("Successfully started google chrome"); } catch (Exception e) { e.printStackTrace(); } } }
Output:
Explanation: In the above program, a class called program is defined. Then the main method is called. Then a process is created to execute google chrome.
The number of available processors are returned using availableProcesors()method. Consider the below Java program to demonstrate the availableProcessors() method of the Java Run time class.
Code:
//a class called program is defined public class program { //main method is called public static void main(String[] args) { //checking for the number of available processors using availableprocessors() method. System.out.println("The number of available processors are " + Runtime.getRuntime().availableProcessors()); } }
Output:
Explanation: In the above program, a class called program is defined. Then the main method is called. Then a check for the number of available processors is done using availableprocessors() method.
The amount of free memory is returned in JVM using freeMemory()method.
Consider the below Java program to demonstrate freeMemory() method of the Java Run time class.
Code:
//a class called program is defined public class program { //main method is called public static void main(String[] args) { //The amount of free memory available is given by using freememory() method System.out.println("The amount of free memory available is " + Runtime.getRuntime().freeMemory()); } }
Output:
Explanation: In the above program, a class called program is defined. Then the main method is called. Then the amount of free memory available is given by using freememory() method.
The amount of total memory is returned in JVM using totalMemory()method. Consider the below Java program to demonstrate totalMemory() method of the Java Run time class.
Code:
//a class called program is defined public class program { //main method is called public static void main(String[] args) { //The amount of total memory available is given by using totalmemory() method System.out.println("The amount of free memory available is " + Runtime.getRuntime().totalMemory()); } }
Output:
Explanation: In the above program, a class called program is defined. Then the main method is called. Then the amount of total memory available is given by using totalmemory() method.
The above is the detailed content of Java Runtime class. For more information, please follow other related articles on the PHP Chinese website!