Open In App

getproperty() and getproperties() methods of System Class in Java

Last Updated : 21 Jan, 2022
Improve
Improve
Like Article
Like
Save
Share
Report

The System class in Java has two methods used to read system properties: 

  • getProperty: The System class has two different versions of getProperty. Both retrieve the value of the property named in the argument list. The simpler of the two getProperty methods takes a single argument.
  • getProperties: The java.lang.System.getProperties() method determines the current system properties.

Description of methods: 

  • getProperty(String key) :  java.lang.System.getProperty(String key)  method returns a string containing the value of the property. If the property does not exist, this version of getProperty returns null. 
    This is based on key – value pair as mentioned in the table given below. 
    Syntax : 
     
public static String getProperty(String key)
Parameters :
key : key whose system property we want
Returns :
System property as specified the key
Null : if there is no property present with that key.
  • Implementation : 

Java




// Java Program illustrating the working of getProperty(String key) method
 
import java.lang.*;
import java.util.Properties;
 
public class NewClass
{
    public static void main(String[] args)
    {
        // Printing Name of the system property
        System.out.println("user.dir: "+System.getProperty("user.dir"));
 
        // Fetches the property set with 'home' key
        System.out.println("home: "+System.getProperty("home"));
        // Resulting in Null as no property is present
 
        // Printing 'name of Operating System'
        System.out.println("os.name: "+System.getProperty("os.name"));
 
        // Printing 'JAVA Runtime version'
        System.out.println("version: "+System.getProperty("java.runtime.version" ));
 
        // Printing 'name' property
        System.out.println("name: "+System.getProperty("name" ));
        // Resulting in Null as no property is present
    }
}


  • Output : 
user.dir: /tmp/hsperfdata_bot
home: null
os.name: Linux
version: 1.8.0_101-b13
name: null
  • getProperty(String key, String definition) : java.lang.System.getProperty(String key, String definition) allows to set the argument definition i.e. one can set a default value for a specific key. 
    Syntax : 
public static String getProperty(String key, String def)
Parameters :
key : system property 
def : default value of the key to be specified  
Returns :
System Property
Null : if there is no property present with that key.
  • Implementation : 

Java




// Java Program illustrating the working of
// getProperty(String key, String definition) method
import java.lang.*;
import java.util.Properties;
 
public class NewClass
{
    public static void main(String[] args)
    {
        // use of getProperty(String key, String definition) method
 
        // Here key = "Hello" and System Property = "Geeks"
        System.out.println("Hello property : "
                        + System.getProperty("Hello", "Geeks"));
 
        // Here key = "Geek" and System Property = "For Geeks"
        System.out.println("System-property :"
                        + System.getProperty("System", "For Geeks"));
     
        // Here key = "Property" and System Property = null
        System.out.println("Property-property :"
                        + System.getProperty("Property"));
 
    }
}


  • Output : 
Hello key property : Geeks
System key property :For Geeks
Property key property :null
  • getProperties() : java.lang.System.getProperties() fetches the current properties that JVM on your System gets from your Operating System. The current System properties are returned as Properties object for use by the getProperties() method. If no such set of properties is present, a set of system is first created and then initialized. 
    One can also modify the existing set of system properties, using System.setProperties() method. There are number of key-value pair in the properties file, some of which are as follows : 
     
Keys                          Values

-->  os.version              :  OS Version  
-->  os.name                 :  OS Name
-->  os.arch                 :  OS Architecture    
-->  java.compiler           :  Name of the compiler you are using
-->  java.ext.dirs           :  Extension directory path
-->  java.library.path       :  Paths to search libraries whenever loading
-->  path.separator          :  Path separator
-->  file.separator          :  File separator
-->  user.dir                :  Current working directory of User
-->  user.name               :  Account name of User
-->  java.vm.version         :  JVM implementation version
-->  java.vm.name            :  JVM implementation name
-->  java.home               :  Java installation directory
-->  java.runtime.version    :  JVM version
  • Syntax : 
public static Properties getProperties()
Parameters :
------
Returns :
System properties that JVM gets on your System gets from OS
  • Implementation : 

Java




// Java Program illustrating the working of getProperties() method
 
import java.lang.*;
import java.util.Properties;
 
public class NewClass
{
    public static void main(String[] args)
    {
 
        /* Use of getProperties() method
            System class refers to the JVM on which you are compiling your JAVA code
            getProperty fetches the actual properties
            that JVM on your System gets from your Operating System
        */
 
        System.out.println("Following are the JVM information of your OS :");
        System.out.println("");
         
        // Property Object
        Properties jvm = System.getProperties();
        jvm.list(System.out);
    }
}


  • Output: Click here to see the output 
     

Important Points:  

  • java.lang.System.getProperty(String key) : fetches only those properties – values that you will specify using the key(associated to that particular value that you want).
  • java.lang.System.getProperty(String key, String definition) : helps you to create your own key-value sets that you want.
  • java.lang.System.getProperties() : fetches all the properties – values that the JVM on your System gets from the Operating System.


Like Article
Suggest improvement
Share your thoughts in the comments

Similar Reads