Properties Class in Java

Facebooktwitterredditpinterestlinkedinmailby feather

Properties class is associated with Java since JDK 1.0, i.e. it is a legacy class. It is the subclass of Hashtable. It is used to maintain the lists of values in which the keys, as well as values, is of String type.

Property list can contain a second property list as its default and this list is searched only if the property key is not found in the main property list.

Property class is thread-safe, i.e. multiple threads can share a single properties object without any external synchronization. This is not a generic class but some of its methods are generic.

It defines the following instance variable:

Properties defaults It holds a default property list associated with the Properties object.

Properties define these constructors:

Properties() This constructor creates a Properties object with no default values.
Properties(Properties propDefault) It generates an empty property list with the specified default value.

Method of Properties Class

Modifiers Methods Description
String getProperty(String key) It returns the value associated with the specified key in the argument. It returns null if the key is neither in the list nor in the default property list.
String getProperty(String key, String defaultProperty) It returns the value associated with the specified key in the argument. defaultProperty is returned if the key is not present in the list as well as in the default property list.
void list(PrintStream streamOut) It sends the property list to the specified output stream linked to the streamOut.
  List(PrintWriter streamOut) It sends the property list to the specified output stream linked to the streamOut.
  load(InputStream streamIn throws IOException) It reads a property list (key and element pairs) from the specified input byte stream linked to streamIn.
  load(Reader streamIn throws IOException) It reads a property list from the input stream linked to streamIn.
  loadFromXML(InputStream streamIn) It loads all the property list represented by an XML document on the specified input stream.
  putAll(Map t) This method copy all of the mapping from the specified map to the hashtable.
  store(OutputStream streamOut, String description) It writes the property list of the Properties table to the specified output stream after writing the string specified by the description parameter.
  store(Writer writer, String comments) It writes the property list of the Properties table to the specified output stream after writing the string specified as comments
  storeToXML(OutputStream out, String comment) The property list is written to the XML document specified in the argument after writing the string specified as a comment.
  storeToXML(OutputStream out, String comment, String enc) The property list and the string specified in the argument is written to XML document linked in the argument.
Enumeration<?> propertyNames() It returns an enumeration of keys that includes those keys found also in the default property list.
Object setProperty(String key, String value) It calls the Hashtable method put, or returns the previous value associated with key or returns null if no associations exist.
Set<String> stringPropertyNames() It returns a set of keys that is unmodifiable, from the property list where key-value pair is the string that includes distinct key in the default property list if an identical key has not already been found from the main property list.
Collection<Object> Values() It returns a collection view of the values contained in the map.
Object merge(Object key, Object value, BiFunction remappingFunction) It associates the specified key with the specified non-null value if the specified key is not already associated with a value or null.

Example code to illustrate getProperty() method.

Output:

Example code to illustrating list() method.

Output:

Exampple code to illustrate propertyNames() method.

Output:

Example code to illustrate setProperty() method.

Output:

Example to illustrate the load and Store method.

Output:

Facebooktwitterredditpinterestlinkedinmailby feather