Сериализуемые объекты могут быть преобразованы в байтовый поток для хранения или передачи, используя стандартный механизм Java java.io.Serializable
.
Парселируемые объекты также могут быть упакованы и распакованы, но используют специализированный механизм Android android.os.Parcelable
. Этот механизм более эффективен для передачи данных между компонентами Android, так как оптимизирован для IPC (Inter-Process Communication).
Характеристика | Serializable | Parcelable |
---|---|---|
Механизм | Java reflection | Android Parceling API |
Производительность | Менее эффективен (использует reflection) | Более эффективен |
Реализация | Проще (маркерный интерфейс) | Требует реализации методов writeToParcel , createFromParcel , describeContents |
Использование | Стандартное Java-приложение, удаленный вызов методов (RMI) | Специфично для Android, передача данных между активити, сервисами и т.д. |
Бойлерплейт | Меньше кода |
Сериализуемые объекты могут быть преобразованы в байтовый поток для хранения или передачи, используя стандартный механизм Java java.io.Serializable
.
Парселируемые объекты также могут быть упакованы и распакованы, но используют специализированный механизм Android android.os.Parcelable
. Этот механизм более эффективен для передачи данных между компонентами Android, так как оптимизирован для IPC (Inter-Process Communication).
Характеристика | Serializable | Parcelable |
---|---|---|
Механизм | Java reflection | Android Parceling API |
Производительность | Менее эффективен (использует reflection) | Более эффективен |
Реализация | Проще (маркерный интерфейс) | Требует реализации методов writeToParcel , createFromParcel , describeContents |
Использование | Стандартное Java-приложение, удаленный вызов методов (RMI) | Специфично для Android, передача данных между активити, сервисами и т.д. |
Бойлерплейт | Меньше кода |
Register or sign in to get access to full answers for all questions from the question bank.