Warning: Cannot use a scalar value as an array in /home/admin/public_html/forum/include/fm.class.php on line 757
Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/include/fm.class.php on line 770
Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/topic.php on line 737 Форумы портала PHP.SU :: Почиму у меня наследуется Private свойство ???
Выходит, что несмотря на то что $varA - private, она все равно унаследдовалась ???
И вопрос номер 2:
На сколько полезно и часто используемая вами SPL ???
Заранее всем спасибо
Sail
Отправлено: 12 Сентября, 2016 - 09:00:40
Участник
Покинул форум
Сообщений всего: 1131
Дата рег-ции: Февр. 2014
Помог: 57 раз(а)
p33t пишет:
Выходит, что несмотря на то что $varA - private, она все равно унаследдовалась ???
Посмотрите на класс B и найдите там метод showVar().
Вот он-то и унаследовался.
p33t
Отправлено: 12 Сентября, 2016 - 10:13:12
Новичок
Покинул форум
Сообщений всего: 40
Дата рег-ции: Окт. 2014
Помог: 0 раз(а)
Получается, что унаследовался сам алгоритм с уже имеющимся значением ???
B::showVar(){echo "A\n";} - в таком виде он уже был унаследован в классе В ???
OrmaJever
Отправлено: 12 Сентября, 2016 - 12:29:48
Активный участник
Покинул форум
Сообщений всего: 7540
Дата рег-ции: Янв. 2010 Откуда: Чернигов
Помог: 299 раз(а)
Вы сильно буквально поняли наследование. Ничего не наследуется, есть просто вызов метода, если php не находит showVar в классе B то он идет искать его в класс А, там находит и вызывает, а метод showVar имеет полный доступ к приватным свойствам класса А, т.к. он сам оттуда.
----- Если вы хотя бы 3-4 раза не решите всё выкинуть и начать заново - вы явно что-то делаете не так.
p33t
Отправлено: 12 Сентября, 2016 - 14:20:27
Новичок
Покинул форум
Сообщений всего: 40
Дата рег-ции: Окт. 2014
Помог: 0 раз(а)
Orma Javer - Спасибо вам огромное. !!!
Все коротко и ясно (Добавление)
Но как по мне, тут уже теряется весь смысл private свойств.
OrmaJever
Отправлено: 13 Сентября, 2016 - 00:22:28
Активный участник
Покинул форум
Сообщений всего: 7540
Дата рег-ции: Янв. 2010 Откуда: Чернигов
Помог: 299 раз(а)
p33t пишет:
Но как по мне, тут уже теряется весь смысл private свойств.
нет. Доступа из вне к приватному свойству нет, с ним работает только метод описанный в этом классе. Суть приватных свойств не в том что бы скрыть какие-то данные, а что бы предотвратить доступ/изменение их, и с этим всё впорядке.
----- Если вы хотя бы 3-4 раза не решите всё выкинуть и начать заново - вы явно что-то делаете не так.
p33t
Отправлено: 13 Сентября, 2016 - 10:27:47
Новичок
Покинул форум
Сообщений всего: 40
Дата рег-ции: Окт. 2014
Помог: 0 раз(а)
все понял.
OrmaJaver Еще раз большое вам спасибо за помощ
Все гости форума могут просматривать этот раздел. Только зарегистрированные пользователи могут создавать новые темы в этом разделе. Только зарегистрированные пользователи могут отвечать на сообщения в этом разделе.