Программирование на языке Java

         

Properties



Properties

Properties - подкласс HashTable, в который для удобства использования добавлено несколько методов, позволяющих получать значения, которые, возможно, не определены в таблице. В методе getProperty вместе с именем можно указывать значение по умолчанию: getРгореrtу("имя","значение_по_умолчанию");

При этом, если в таблице свойство "имя" отсутствует, метод вернет "значение_по_умолчанию". Кроме того, при создании нового объекта этого класса конструктору в качестве параметра можно передать другой объект Properties, при этом его содержимое будет использоваться в качестве значений по умолчанию для свойств нового объекта. Объект Properties в любой момент можно записать либо считать из потока - объекта Stream (потоки будут обсуждаться в главе 13). Ниже приведен пример, в котором создаются и впоследствии считываются некоторые свойства: import java.util.Properties; class PropDemo { static Properties prop = new Properties(); public static void main(String args[]) { prop.put("Title", "put title here"); prop.put("Author", "put name here"); prop.put("isbn", "isbn not set"); Properties book = new Properties(prop); book.put("Title", "The Java Handbook"); book.put("Author", "Patrick Naughton"); System.out.println("Title: " + book.getProperty("Title")); System.out.println("Author: " + book.getProperty("Author")); System.out.println("isbn: " + book.getProperty("isbn")); System.out.println("ean: " + book.getProperty("ean", "???")); } }

Здесь мы создали объект prop класса Properties, содержащий три значения по умолчанию для полей Title, Author и isbn. После этого мы создали еще один объект Properties с именем book, в который мы поместили реальные значения для полей Title и Author. В следующих трех строках примера мы вывели результат, возвращенный методом getProperty для всех трех имеющихся ключей. В четвертом вызове getProperty стоял несуществующий ключ "еаn". Поскольку этот ключ отсутствовал в объекте book и в объекте по умолчанию prop, метод getProperty выдал нам указанное в его вызове значение по умолчанию, то есть "???": С:\> java PropDemo Title: The Java Handbook Author: Patrick Naughton isbn: isbn not set ean: ???



Содержание раздела