private static final java.io.ObjectStreamField[] serialPersistentFields =
{
new java.io.ObjectStreamField("value", char[].class),
new java.io.ObjectStreamField("count", Integer.TYPE),
new java.io.ObjectStreamField("shared", Boolean.TYPE),
};
Что означает знак равно в методе?
Что такое char[].class ?
Что такое Integer.TYPE и Boolean.TYPE?Денис
41 уровень
Объясните пожалуйста метод
Архивный
Комментарии (3)
- популярные
- новые
- старые
Для того, чтобы оставить комментарий Вы должны авторизоваться
Vitya
13 апреля 2023, 17:24
Вопрос конечно давно был задан, но отвечу, вдруг кто ещё заинтересуется.
Ну, что это присвоение массива уже сказали, скажу про остальное.
ObjectStreamField[] serialPersistentFields - массив, который определяет с какими полями будет работать сериализация. Сами поля указываются в виде ObjectStreamField, внутрь передаётся название поля и его тип.
Integer.TYPE == int.class - т.е. это объект класса (Class), представляющий примитивный тип int. То же для char[].class - объект класса, представляющий примитивный массив char.
Ну и, например, ObjectStreamField("count", Integer.TYPE) - означает, что поле "int count" нашего класса участвует в сериализации. Поля, которые здесь не указаны, сериализованы не будут.
Подробнее здесь:
https://docs.oracle.com/javase/7/docs/platform/serialization/spec/serial-arch.html
0
hidden #598481
17 ноября 2019, 19:14
А где ты метод увидел? Здесь нет круглых скобок с параметрами, нет фигурных скобок, обозначающих границы метода.
Это объявление и инициализация переменной.
Название переменной - serialPersistentFields, тип переменной - массив объектов java.io.ObjectStreamField.
В массиве три элемента, перечисленные через запятую внутри фигурных скобок.. Про типы тебе Ксения ответила.
+2
Ksenia VolkovaJava Developer в DXCMaster
17 ноября 2019, 19:12
= оператор присвоения
char[].class - объект типа Class, класс массива символов
Integer.TYPE и Boolean.TYPE - статические переменные типа Calss классов Integer и Boolean
+2