Java Properties Class



Introduction

The Java Properties class is a class which represents a persistent set of properties. The Properties can be saved to a stream or loaded from a stream. Following are the important points about Properties −

  • Each key and its corresponding value in the property list is a string.

  • A property list can contain another property list as its 'defaults', this second property list is searched if the property key is not found in the original property list.

  • This class is thread-safe; multiple threads can share a single Properties object without the need for external synchronization.

Class declaration

Following is the declaration for java.util.Properties class −

 public class Properties extends Hashtable<Object,Object> 

Field

Following are the fields for java.util.Properties class −

protected Properties defaults − This is the property list that contains default values for any keys not found in this property list.

Class constructors

Sr.No.Constructor & Description
1

Properties()

This constructs creates an empty property list with no default values.

2

Properties(int initialCapacity)

This constructs creates an empty property list with no default values, and with an initial size accommodating the specified number of elements without the need to dynamically resize.

3

Properties(Properties defaults)

This constructs creates an empty property list with the specified defaults.

Class methods

Sr.No.Method & Description
1String getProperty(String key)

This method searches for the property with the specified key in this property list.

2void list(PrintStream out)

This method prints this property list out to the specified output stream.

3void load(InputStream inStream)

This method reads a property list (key and element pairs) from the input byte stream.

4void loadFromXML(InputStream in)

This method loads all of the properties represented by the XML document on the specified input stream into this properties table.

5Enumeration<?> propertyNames()

This method returns an enumeration of all the keys in this property list, including distinct keys in the default property list if a key of the same name has not already been found from the main properties list.

6Object setProperty(String key, String value)

This method calls the Hashtable method put.

7void store(OutputStream out, String comments)

The method writes this property list (key and element pairs) in this Properties table to the output stream in a format suitable for loading into a Properties table using the load(InputStream) method.

8void storeToXML(OutputStream os, String comment)

This method emits an XML document representing all of the properties contained in this table.

9Set<String> stringPropertyNames()

This method returns a set of keys in this property list where the key and its corresponding value are strings, including distinct keys in the default property list if a key of the same name has not already been found from the main properties list.

Methods inherited

This class inherits methods from the following classes −

  • java.util.Hashtable
  • java.util.Object

Getting an Enumeration of Properties Keys Example

The following example shows the usage of java.util.Properties.propertyNames() method.

 package com.tutorialspoint; import java.util.Enumeration; import java.util.Properties; public class PropertiesDemo { public static void main(String[] args) { Properties prop = new Properties(); // add some properties prop.put("Height", "200"); prop.put("Width", "15"); // assign the property names in a enumaration Enumeration<?> enumeration = prop.propertyNames(); // print the enumaration elements while(enumeration.hasMoreElements()) { System.out.println("" + enumeration.nextElement()); } } } 

Output

Let us compile and run the above program, this will produce the following result −

 Width Height 
Advertisements
close