|
Spec-Zone .ru
спецификации, руководства, описания, API
|
public abstract class Format extends Object implements Serializable, Cloneable
Format абстрактный class для того, чтобы отформатировать уязвимую информацию локали, такую как даты, сообщения, и числа.
Format определяет интерфейс программирования для того, чтобы отформатировать чувствительные к локали объекты в Strings ( format метод) и для того, чтобы проанализировать Strings назад в объекты ( parseObject метод).
Обычно, формат parseObject метод должен быть в состоянии проанализировать любую строку, отформатированную format метод. Однако, могут быть исключительные случаи, где это не возможно. Например, a format метод мог бы создать два смежных целых числа без разделителя промежуточный, и в этом случае parseObject не мог сказать, какие цифры принадлежат который число.
Платформа Java обеспечивает три специализированных подкласса Format-- DateFormat, MessageFormat, и NumberFormat- для того, чтобы отформатировать даты, сообщения, и числа, соответственно.
Конкретные подклассы должны реализовать три метода:
format(Object obj, StringBuffer toAppendTo, FieldPosition pos)
formatToCharacterIterator(Object obj)
parseObject(String source, ParsePosition pos)
MessageFormat. Подклассы часто также обеспечивают дополнительный format методы для определенных входных типов так же как parse методы для определенных типов результата. Любой parse метод, который не берет a ParsePosition параметр должен бросить ParseException когда никакой текст в необходимом формате не в начале входного текста. Большинство подклассов также реализует следующие методы фабрики:
getInstance для того, чтобы получить полезный формат возражают соответствующий для текущей локали getInstance(Locale) для того, чтобы получить полезный формат возражают соответствующий для указанной локали getXxxxInstance методы для более специализированного управления. Например, NumberFormat class обеспечивает getPercentInstance и getCurrencyInstance методы для того, чтобы получить специализированные средства форматирования числа. Подклассы Format это позволяет программистам создавать объекты для локалей (с getInstance(Locale) например), должен также реализовать следующий метод class:
public static Locale[] getAvailableLocales()
И наконец подклассы могут определить ряд констант, чтобы идентифицировать различные поля в отформатированном выводе. Эти константы используются, чтобы создать объект FieldPosition, который идентифицирует, какая информация содержится в поле и его позиции в отформатированном результате. Эти константы нужно назвать item_FIELD где item идентифицирует поле. Для примеров этих констант см. ERA_FIELD и его друзья в DateFormat.
Форматы обычно не синхронизируются. Рекомендуется создать отдельные экземпляры формата для каждого потока. Если многократные потоки получают доступ к формату одновременно, он должен синхронизироваться внешне.
ParsePosition, FieldPosition, NumberFormat, DateFormat, MessageFormat, Сериализированная Форма| Модификатор и Тип | Класс и Описание |
|---|---|
static class |
Формат. Поле
Определяет константы, которые используются, поскольку атрибут вводит
AttributedCharacterIterator возвращенный из Format.formatToCharacterIterator и как полевые идентификаторы в FieldPosition. |
| Модификатор | Конструктор и Описание |
|---|---|
protected |
Format()
Единственный конструктор.
|
| Модификатор и Тип | Метод и Описание |
|---|---|
Объект |
clone()
Создает и возвращает копию этого объекта.
|
Строка |
format(Object obj)
Форматирует объект произвести строку.
|
abstract StringBuffer |
format(Object obj, StringBuffer toAppendTo, FieldPosition pos)
Форматирует объект и добавляет получающийся текст к данному строковому буферу.
|
AttributedCharacterIterator |
formatToCharacterIterator(Object obj)
Форматирует Объект, производящий
AttributedCharacterIterator. |
Объект |
parseObject(String source)
Текст синтаксических анализов с начала данной строки произвести объект.
|
abstract Object |
parseObject(String source, ParsePosition pos)
Текст синтаксических анализов от строки, чтобы произвести объект.
|
protected Format()
public final String format(Object obj)
format(obj, new StringBuffer(), new FieldPosition(0)).toString();
obj - Объект отформатироватьIllegalArgumentException - если Формат не может отформатировать данный объектpublic abstract StringBuffer format(Object obj, StringBuffer toAppendTo, FieldPosition pos)
pos параметр идентифицирует поле, используемое форматом, тогда его индексы устанавливаются в начало и конец первого такое поле, с которым встречаются.obj - Объект отформатироватьtoAppendTo - где текст должен быть добавленpos - A FieldPosition идентификация поля в отформатированном текстеtoAppendTo, с отформатированным добавленным текстомNullPointerException - если toAppendTo или pos нульIllegalArgumentException - если Формат не может отформатировать данный объектpublic AttributedCharacterIterator formatToCharacterIterator(Object obj)
AttributedCharacterIterator. Можно использовать возвращенный AttributedCharacterIterator создать получающуюся Строку, так же как определить информацию о получающейся Строке. Каждый ключ атрибута AttributedCharacterIterator будет иметь тип Field. Это до каждого Format реализация, чтобы определить, что юридические значения для каждого атрибута в AttributedCharacterIterator, но обычно ключ атрибута также используется в качестве значения атрибута.
Реализация по умолчанию создает AttributedCharacterIterator без атрибутов. Подклассы, которые поддерживают поля, должны переопределить это и создать AttributedCharacterIterator со значимыми атрибутами.
obj - Объект отформатироватьNullPointerException - если obj является нулем.IllegalArgumentException - когда Формат не может отформатировать данный объект.public abstract Object parseObject(String source, ParsePosition pos)
Метод пытается проанализировать текст, запускающийся при индексировании данного pos. Если парсинг успешно выполняется, то индексирование pos обновляется к индексированию после используемого последнего знака (парсинг не обязательно израсходовал все символы до конца строки), и проанализированный объект возвращается. Обновленный pos может использоваться, чтобы указать на начальную точку для следующего звонка в этот метод. Если ошибка происходит, то индексирование pos не изменяется, ошибка индексируют pos устанавливается в индексирование символа, где ошибка произошла, и нуль возвращается.
source - A String, часть которого должна быть проанализирована.pos - A ParsePosition объект с индексирует, и ошибка индексируют информацию как описано выше.Object проанализированный от строки. В случае ошибки, нуля возвратов.NullPointerException - если pos нуль.public Object parseObject(String source) throws ParseException
source - A String чье начало должно быть проанализировано.Object проанализированный от строки.ParseException - если начало указанной строки не может быть проанализировано.
Для дальнейшей ссылки API и документации разработчика, см. Java Документация SE. Та документация содержит более подробные, предназначенные разработчиком описания, с концептуальными краткими обзорами, определениями сроков, обходных решений, и рабочих примеров кода.
Авторское право © 1993, 2013, Oracle и/или его филиалы. Все права защищены.
Проект сборка-b92