Класс ObjectStreamClass
java.lang.Object
java.io.ObjectStreamClass
- Все реализуемые интерфейсы:
Serializable
public final class ObjectStreamClass extends Object implements Serializable
Описание класса для сериализации. Оно содержит имя и serialVersionUID класса. Объект ObjectStreamClass для конкретного класса, загруженного в этой Java VM, можно найти/создать, используя метод lookup.
Алгоритм вычисления serialVersionUID описан в Спецификации Java Object Serialization, Раздел 4.6, "Уникальные идентификаторы потока".
- С момента:
- 1.1
- Внешние спецификации
- См. также:
Краткое описание полей
| Модификатор и тип | Поле | Описание |
|---|---|---|
static final ObjectStreamField[] |
NO_FIELDS |
Значение serialPersistentFields, указывающее на отсутствие сериализуемых полей |
Краткое описание методов
| Модификатор и тип | Метод | Описание |
|---|---|---|
Class |
forClass() |
Возвращает класс в локальной VM, к которому сопоставлена эта версия. |
ObjectStreamField |
getField |
Получение поля данного класса по имени. |
ObjectStreamField[] |
getFields() |
Возвращает массив полей данного сериализуемого класса. |
String |
getName() |
Возвращает имя класса, описываемого этим описанием. |
long |
getSerialVersionUID() |
Возвращает serialVersionUID для данного класса. |
static ObjectStreamClass |
lookup |
Поиск описания класса, который может быть сериализован. |
static ObjectStreamClass |
lookupAny |
Возвращает описание любого класса, независимо от того, реализует ли он Serializable. |
String |
toString() |
Возвращает строку, описывающую этот ObjectStreamClass. |
Подробное описание полей
NO_FIELDS
public static final ObjectStreamField[] NO_FIELDS
Значение serialPersistentFields, указывающее на отсутствие сериализуемых полей
Подробное описание методов
lookup
public static ObjectStreamClass lookup(Class<?> cl)
Поиск описания класса, который может быть сериализован. Создает экземпляр ObjectStreamClass, если он еще не существует для класса. Возвращает null, если указанный класс не реализует java.io.Serializable или java.io.Externalizable.
- Параметры:
-
cl- класс, для которого нужно получить описание - Возвращает:
- описание класса для указанного класса
lookupAny
public static ObjectStreamClass lookupAny(Class<?> cl)
Возвращает описание любого класса, независимо от того, реализует ли он
Serializable.- Параметры:
-
cl- класс, для которого нужно получить описание - Возвращает:
- описание класса для указанного класса
- С момента:
- 1.6
getName
public String getName()
Возвращает имя класса, описываемого этим описанием. Этот метод возвращает имя класса в формате, используемом методом
Class.getName().- Возвращает:
- строка, представляющая имя класса
getSerialVersionUID
public long getSerialVersionUID()
Возвращает serialVersionUID для данного класса. serialVersionUID определяет набор классов с одинаковым именем, которые эволюционировали от общего базового класса и соглашаются быть сериализованными и десериализованными с использованием общего формата. Для классов, не являющихся Serializable, serialVersionUID равен 0L.
- Возвращает:
- SUID класса, описываемого этим описанием
forClass
public Class<?> forClass()
Возвращает класс в локальной VM, которому сопоставлена эта версия. Возвращает null, если нет соответствующего локального класса.
- Возвращает:
- экземпляр
Class, который представляет это описание
getFields
public ObjectStreamField[] getFields()
Возвращает массив полей этого сериализуемого класса.
- Возвращает:
- массив, содержащий элемент для каждого постоянного поля этого класса. Возвращает массив длиной ноль, если полей нет.
- С момента:
- 1.2
getField
public ObjectStreamField getField(String name)
Получение поля данного класса по имени.
- Параметры:
-
name- имя поля данных для поиска - Возвращает:
- Объект ObjectStreamField заданного поля или null, если такого поля с указанным именем нет.
toString
© 1993, 2025, Oracle and/or its affiliates. All rights reserved.
Documentation extracted from Debian's OpenJDK Development Kit package.
Licensed under the GNU General Public License, version 2, with the Classpath Exception.
Various third party code in OpenJDK is licensed under different licenses (see Debian package).
Java and OpenJDK are trademarks or registered trademarks of Oracle and/or its affiliates.
https://download.java.net/java/early_access/jdk24/docs/api/java.base/java/io/ObjectStreamClass.html