|
Spec-Zone .ru
спецификации, руководства, описания, API
|
@ConstructorProperties аннотация аннотация была представлена в Java SE 6.0, чтобы показать, как параметры аннотируемого конструктора соответствуют свойствам объекта. Ранее, конструктор DefaultPersistenceDelegate(String[] constructorPropertyNames) использовался для той же самой цели, но не был соответствующий подход для классов библиотеки.
Технически, аннотация используется для того, чтобы скопировать бобы со свойствами только для чтения. В следующем примере кода Food свойства только для чтения.
public class Food {
private final int varieties;
private final String country;
@ConstructorProperties({"varieties", "country"})
public Point(int varieties, String country) {
this.varieties = varieties;
this.country = country;
}
public int getVarieties() {
return this.varieties;
}
public String getCountry() {
return this.country;
}
}
Создать a vegetable объект с теми же самыми свойствами, что fruit объект имеет, используйте следующий код:
Food fruit = new Food (5, "Argentina"); Food vegetable = new Food (fruit.getVarieties(), fruit.getCountry());Определение аннотации выполняет две цели:
DefaultPersistenceDelegate class.NullPointerException ошибка с EventHandler classИсключение NPR было выдано EventHandler class. create метод EventHandler class проверяет null значение, и javadoc исправляются соответственно.
Документация относительно EventHandler class eventPropertyName параметр ясно не объяснял waht, который поддерживает параметр. Информация, о какой eventProperName свойство способно к, включается в документацию для метод.
EventHandler class не должен кэшироваться Method объектПоиск метода улучшается, и методу препятствуют кэшироваться в EventHandler Поле class.
EventHandler class действительно поддерживал тот же самый синтаксис как свойство событияЦелевой синтаксис свойства фиксируется и теперь поддерживает произвольное число методов или свойств. Это было выполнено, разделяя каждое свойство или метод с ".".
XMLEncoder classСледующие исправления выполнялись, чтобы улучшить долгосрочный процесс персистентности.
java.beans.XMLEncoder class не кодирует java.net.URI объекты Statement class не мог получить доступ к элементу java.net.URI class с частными модификаторами. В JDK 6.0 соответствующее PersistenceDelegate обеспечивается, чтобы решить эту проблему.
XMLEncoder class не кодирует null записи в HashMap объектыНуль Key запись HashMap объект не был включен в вывод XML. Фиксация включает нуль Key запись в XML-файл.
XMLEncoder class испускает недопустимый XML XMLEncoder class производит вывод XML только для допустимых символов XML. Новое code атрибут был представлен для символьного элемента. code содержит шестнадцатеричное значение, если оно запускается с "#". Иначе это содержит десятичное значение.
XMLEncoder class не кодирует перечисления правильно XMLEncoder class не сериализировал перечисление правильно. EnumPersistenceDelegate class, новый делегат персистентности, был представлен, чтобы поддерживать сериализацию классов Enum.
XMLEncoder class игнорирует делегатов персистентности когда использующийся с Сетью Java, ЗапускаютсяA DefaultPersistenceDelegate class для некоторых классов создавался ненадлежащим образом. В результате взлом, который добавляет доступ к полю для свойств и повреждающейся спецификации JavaBeans, был обнаружен. Выполняемая фиксация удаляет взлом, который был предназначен для следующих классов: java.awt.Dimension, java.awt.Point, и java.awt.Rectangle.
XMLDecoder class не игнорирует операторы, сделанные владельцу если read() метод вызываютПервоначально class XMLDecoder создавался с ленивой инициализацией. Фиксация позволяет анализировать в close() метод, если файл не анализируется readObject() метод.
XMLDecoder class перестал работать при использовании турецкой Локали XMLDecoder class не функционировал правильно, читая английский XML-файл на машине с набором локали на турецкий язык. Исправлять эту ошибку toLowerCase и toUpperCase методы вызываются в английской локали.
Component объект отсутствует во время сериализации xmlContainer объекты не были сериализированы. Фиксация добавляет специальное поведение к делегату персистентности к контейнерам с BorderLayout.