|
1 / 1 / 0
Регистрация: 31.07.2015
Сообщений: 28
|
|
Сериализация методов объекта27.08.2017, 13:30. Показов 4929. Ответов 3
Добрый день!
Только-только начал изучать сериализацию. И первое, что бросилось при прочтении тем и материалов об этом, везде (и при использовании атрибута [Serializable], и при реализации интерфейса ISerializable) приводятся примеры только с полями объекта. Я не понимаю вот чего, при десериализации, наш объект восстановится полностью, со всеми своими полями и всеми его методами(функциями и процедурами)? Аналогично про поля данного класса, являющиеся объектами другого класса, со своими методами. Всё-таки я до конца не понимаю, сериализация позволяет преобразовывать объект весь, со всеми его полями/свойствами/методами или нет?
0
|
|
| 27.08.2017, 13:30 | |
|
Ответы с готовыми решениями:
3
Сериализация объекта |
|
|
||||||||||||||||
| 27.08.2017, 14:55 | ||||||||||||||||
Сообщение было отмечено Roman_NikName как решение
Решение
Класс - это чертёж, по которому строится объект. Вот создал ты экземпляр класса Person, который описан ниже, сериализовал его, сериализуются только значения, находящиеся в полях класса, доступ к которым предоставляют свойства (в данном случае - автоматические свойства). Сериализовать методы/конструкторы нельзя, так как это описание определённого функционала, каких-то действий, а не представление данных в памяти. То есть сериализуются сами данные, например, для их передачи по сети или сохраненеия в файл/БД.
3
|
||||||||||||||||
|
1 / 1 / 0
Регистрация: 31.07.2015
Сообщений: 28
|
|||||||||||
| 27.08.2017, 18:37 [ТС] | |||||||||||
|
Тоесть, в примере ниже сразу за десериализацией данных класса, мы этими данными заполняем поля вновь созданного экземпляра класса?
Я имею в виду в строчке:
0
|
|||||||||||
|
360 / 287 / 76
Регистрация: 21.06.2016
Сообщений: 1,115
|
|
| 27.08.2017, 19:35 | |
Сообщение было отмечено Roman_NikName как решение
Решение
В грубом представлении -да, Вы создаете новый объект своего же класса.
Представьте велосипед. Он громоздкий для перевозки в багажнике малолитражки. Но Вы можете его разобрать на запчасти, сложить, перевезти, и потом заново собрать. Но себя Вы не распиливаете, а сам велосипед не поедет. Вот так и тут, собрали объект класса, а функционал он получил такой же как и был. Грубый очень пример, я знаю.
2
|
|
| 27.08.2017, 19:35 | |
|
Помогаю со студенческими работами здесь
4
Сериализация объекта Сериализация объекта с делегатом Глубокая сериализация объекта Работа с классом: сериализация объекта Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
SDL3 для Web (WebAssembly): Обработчик клика мыши в браузере ПК и касания экрана в браузере на мобильном устройстве
8Observer8 02.02.2026
Содержание блога
Для начала пошагово создадим рабочий пример для подготовки к экспериментам в браузере ПК и в браузере мобильного устройства. Потом напишем обработчик клика мыши и обработчик. . .
|
Философия технологии
iceja 01.02.2026
На мой взгляд у человека в технических проектах остается роль генерального директора. Все остальное нейронки делают уже лучше человека. Они не могут нести предпринимательские риски, не могут. . .
|
SDL3 для Web (WebAssembly): Вывод текста со шрифтом TTF с помощью SDL3_ttf
8Observer8 01.02.2026
Содержание блога
В этой пошаговой инструкции создадим с нуля веб-приложение, которое выводит текст в окне браузера. Запустим на Android на локальном сервере. Загрузим Release на бесплатный. . .
|
SDL3 для Web (WebAssembly): Сборка C/C++ проекта из консоли
8Observer8 30.01.2026
Содержание блога
Если вы откроете примеры для начинающих на официальном репозитории SDL3 в папке: examples, то вы увидите, что все примеры используют следующие четыре обязательные функции, а. . .
|
|
SDL3 для Web (WebAssembly): Установка Emscripten SDK (emsdk) и CMake для сборки C и C++ приложений в Wasm
8Observer8 30.01.2026
Содержание блога
Для того чтобы скачать Emscripten SDK (emsdk) необходимо сначало скачать и уставить Git: Install for Windows. Следуйте стандартной процедуре установки Git через установщик. . . .
|
SDL3 для Android: Подключение Box2D v3, физика и отрисовка коллайдеров
8Observer8 29.01.2026
Содержание блога
Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами. Версия v3 была полностью переписана на Си, в. . .
|
Инструменты COM: Сохранение данный из VARIANT в файл и загрузка из файла в VARIANT
bedvit 28.01.2026
Сохранение базовых типов COM и массивов (одномерных или двухмерных) любой вложенности (деревья) в файл, с возможностью выбора алгоритмов сжатия и шифрования.
Часть библиотеки BedvitCOM
Использованы. . .
|
SDL3 для Android: Загрузка PNG с альфа-каналом с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 28.01.2026
Содержание блога
SDL3 имеет собственные средства для загрузки и отображения PNG-файлов с альфа-каналом и базовой работы с ними. В этой инструкции используется функция SDL_LoadPNG(), которая. . .
|