![]() |
Модераторы: skyboy, MoLeX, Aliance, ksnk |
![]() ![]() ![]() |
|
MyDarkSide |
|
||||
![]() Шустрый ![]() Профиль Группа: Участник Сообщений: 69 Регистрация: 21.3.2008 Репутация: -1 Всего: -1 |
Собсно код:
вывод:
то что публичный член класса A не переопределил приватный член класса B - понятно так и должно быть, но как и самое главное ЗАЧЕМ приватный член базового класса попал в наследующий класс ?? причем речь идет не об ошибке распарсивания , приватный член базового класса изменяется динамически. Я бы понял (и простил ![]() Это сообщение отредактировал(а) MyDarkSide - 9.11.2009, 11:29 |
||||
|
|||||
NewDima |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 922 Регистрация: 20.2.2006 Где: <?here?> Репутация: нет Всего: 12 |
MyDarkSide, ты думаешь, если с помощью serialize не будут сохранены private члены базового класса, то после unserialize ты сможешь восстановить первоначальное состояние объекта?
Инкапсуляция скрывает от кода, не имеющего права на доступ, помеченный члены класса, но как это должно относиться к serialize-у? Сохранили состояние объекта (а в него входят все члены класса, родительского класса и так далее) и все. |
|||
|
||||
MyDarkSide |
|
|||
![]() Шустрый ![]() Профиль Группа: Участник Сообщений: 69 Регистрация: 21.3.2008 Репутация: -1 Всего: -1 |
NewDima, хороший вопрос..
значит, если сохранять объект в файл, то либо у него не должно быть родителей (либо они должны содержать только методы) либо сохранять своим методом без сериализа |
|||
|
||||
NewDima |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 922 Регистрация: 20.2.2006 Где: <?here?> Репутация: нет Всего: 12 |
Возьми любой компилируемый язык с ООП, вот сделаешь ты дамп памяти, где содержится экземпляр определенного класса. Думаешь ты не увидишь там private членов родительских классов? А где им тогда храниться?
Так и здесь, зачем пялиться на результат сериалайза (параллель с дампом)? |
|||
|
||||
sTa1kEr |
|
|||
9/10 программиста ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1553 Регистрация: 21.2.2007 Репутация: 11 Всего: 146 |
Для сериализации объектов существует интерфейс Serializable.
|
|||
|
||||
NewDima |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 922 Регистрация: 20.2.2006 Где: <?here?> Репутация: нет Всего: 12 |
sTa1kEr, вы к чему это? Человек спрашивает, почему видно состояние объекта, которое скрывается в private секции
|
|||
|
||||
sTa1kEr |
|
|||
9/10 программиста ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1553 Регистрация: 21.2.2007 Репутация: 11 Всего: 146 |
NewDima, это вот к этому:
Добавлено через 1 минуту и 20 секунд Если сохранять объект в файл, то он должен реализовывать интерфейс Serializable. Это хорошая практика. |
|||
|
||||
MyDarkSide |
|
|||
![]() Шустрый ![]() Профиль Группа: Участник Сообщений: 69 Регистрация: 21.3.2008 Репутация: -1 Всего: -1 |
sTa1kEr, спасибо за наводку!
Добавлено через 8 минут и 33 секунды
Вопроса два - именно этот ( и нет ли в связи с этим проблем с безопасностью) и второй именно про сериализ - зачем мне в файле лишние данные. |
|||
|
||||
SneG0K |
|
|||
![]() Max Mara ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1887 Регистрация: 1.12.2007 Где: Wis Dells Репутация: нет Всего: 54 |
||||
|
||||
![]() ![]() ![]() |
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей) | |
0 Пользователей: | |
« Предыдущая тема | PHP: Для профи | Следующая тема » |
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |