This
class is an extension of Hashtable that allows
key/value pairs to be read from and written to a stream. The
Properties class implements the system properties
list, which supports user customization by allowing programs to look
up the values of named resources. Because the load(
) and store( ) methods provide an easy
way to read and write properties from and to a text stream, this
class provides a convenient way to implement an application
configuration file.
When you create a Properties object, you may
specify another Properties object that contains
default values. Keys (property names) and values are associated in a
Properties object with the
Hashtable method put( ). Values
are looked up with getProperty( ); if this method
does not find the key in the
current Properties object, it looks in the default
Properties object that was passed to the
constructor method. A default value can also be specified, in case
the key is not found at all. Use setProperty( ) to
add a property name/value pair to the Properties
object. This Java 1.2 method is preferred over the inherited
put( ) method because it enforces the constraint
that property names and values be strings.
propertyNames( ) returns an
enumeration of all property names (keys) stored in the
Properties object and (recursively) all property
names stored in the default Properties object
associated with it. list( ) prints the properties
stored in a Properties object, which can be useful
for debugging. store( ) writes a
Properties object to a stream, writing one
property per line, in name=value format. As of Java 1.2,
store( ) is preferred over the deprecated
save( ) method, which writes properties in the
same way but suppresses any I/O exceptions that may be thrown in the
process. The second argument to both store( ) and
save( ) is a comment that is written out at the
beginning of the property file. Finally, load( )
reads key/value pairs from a stream and stores them in a
Properties object. It is suitable for reading both
properties written with store( ) and hand-edited
properties files. In Java 5.0, storeToXML( ) and
loadFromXML( ) are alternatives that write and
read properties files using a simple XML grammar.

public class Properties extends Hashtable<Object,Object> {
// Public Constructors
public Properties( );
public Properties(Properties defaults);
// Public Instance Methods
public String getProperty(String key);
public String getProperty(String key, String defaultValue);
1.1 public void list(java.io.PrintWriter out);
public void list(java.io.PrintStream out);
public void load(java.io.InputStream inStream)
throws java.io.IOException; synchronized
5.0 public void loadFromXML(java.io.InputStream in)
throws java.io.IOException, InvalidPropertiesFormatException; synchronized
public Enumeration<?> propertyNames( );
1.2 public Object setProperty(String key, String value); synchronized
1.2 public void store(java.io.OutputStream out, String comments)
throws java.io.IOException; synchronized
5.0 public void storeToXML(java.io.OutputStream os, String comment)
throws java.io.IOException; synchronized
5.0 public void storeToXML(java.io.OutputStream os, String comment, String encoding)
throws java.io.IOException; synchronized
// Protected Instance Fields
protected Properties defaults;
// Deprecated Public Methods
# public void save(java.io.OutputStream out, String comments); synchronized
}