Зачем использовать parcelable, если вы можете выполнить ту же задачу, используя статические переменные? - PullRequest
7 голосов
/ 08 июля 2011

я новичок в android и java ... я читаю дневные пары об учебнике по разделению android для передачи данных или значений переменных из одного вида деятельности в другой или из одного класса в другой ... но меня не так поняли тот. Можете ли вы сказать мне, что для этой цели необходимо использовать Parcelable, поскольку эту же задачу можно также выполнить, используя ключевое слово static для переменных типа string, int или array, тогда почему parslable pls объясняет подробно .. спасибо за объяснение заранее, приведите сравнение с примером

1 Ответ

6 голосов
/ 08 июля 2011

Хотя технически оба подхода будут работать, есть пара недостатков.

Во-первых, статическая переменная является статической.Если у вас есть два экземпляра одного и того же действия, они оба будут ссылаться на один и тот же статический объект.Вероятно, это не то, что вам нужно.

Во-вторых, доступ к глобальным переменным считается плохой практикой.Это затрудняет понимание того, что происходит, это сложно проверить, и вы (другой класс) можете изменить ваши данные.Это создает некоторые ужасные ошибки.

Передавая данные через объект Parcelable, становится очень ясно, что вы делаете, и вы избегаете обеих этих проблем.

Обратите внимание, что этот совет не специфичен для Android, скорее для Java и программирования в целом.

...