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



Утилиты - часть 7


С:\> java HTDemo

Title: The Java Handbook

Author: Patrick Naughton

Email: naughton@starwave.com

Age: 30

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 выдал нам указанное в его вызове значение по умолчанию, то есть “???”:




Содержание  Назад  Вперед