Класс ObjectStreamClass
- java.lang.Object
-
- java.io.ObjectStreamClass
- Все реализуемые интерфейсы:
Serializable
public class ObjectStreamClass extends Object implements Serializable
Описание класса для сериализации. Содержит имя и serialVersionUID класса. Объект ObjectStreamClass для конкретного класса, загруженного в эту виртуальную машину Java, можно найти/создать с помощью метода поиска.
Алгоритм вычисления serialVersionUID описан в Спецификации сериализации объектов, раздел 4.6, Уникальные идентификаторы потока.
- С:
- 1.1
- См. также:
-
ObjectStreamField, Спецификация сериализации объектов, раздел 4, Описания классов, Сериализованная форма
Поля
| Модификатор и тип | Поле | Описание |
|---|---|---|
static ObjectStreamField[] |
NO_FIELDS |
Значение serialPersistentFields, указывающее отсутствие сериализуемых полей |
Методы
| Модификатор и тип | Метод | Описание |
|---|---|---|
Class<?> |
forClass() |
Возвращает класс в локальной виртуальной машине, которому соответствует эта версия. |
ObjectStreamField |
getField(String name) |
Получение поля этого класса по имени. |
ObjectStreamField[] |
getFields() |
Возвращает массив полей этого сериализуемого класса. |
String |
getName() |
Возвращает имя класса, описываемого этим дескриптором. |
long |
getSerialVersionUID() |
Возвращает serialVersionUID для этого класса. |
static ObjectStreamClass |
lookup(Class<?> cl) |
Поиск дескриптора для класса, который может быть сериализован. |
static ObjectStreamClass |
lookupAny(Class<?> cl) |
Возвращает дескриптор любого класса, независимо от того, реализует ли он |
String |
toString() |
Возвращает строку, описывающую этот ObjectStreamClass. |
Методы, объявленные в классе java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
Поля
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.
- Возвращает:
- СУИД класса, описанного этим дескриптором
forClass
public Class<?> forClass()
Возвращает класс в локальной виртуальной машине, которому соответствует эта версия. Возвращает null, если нет соответствующего локального класса.
- Возвращает:
- экземпляр класса, представленный этим дескриптором
getFields
public ObjectStreamField[] getFields()
Возвращает массив полей этого сериализуемого класса.
- Возвращает:
- массив, содержащий элемент для каждого постоянного поля этого класса. Возвращает массив длиной ноль, если полей нет.
- С:
- 1.2
getField
public ObjectStreamField getField(String name)
Получение поля этого класса по имени.
- Параметры:
-
name- имя поля данных для поиска - Возвращает:
- Объект ObjectStreamField для поля с указанным именем или null, если такого поля нет.
toString
public String toString()
Возвращает строку, описывающую этот ObjectStreamClass.
© 1993, 2020, 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://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/io/ObjectStreamClass.html