Доступ к private полю такого же, как ты
Представим себе ситуацию: создали класс и объявили в нём приватное свойство, в которое записали супер-секретный шифр и объявили в нём ссылку на экземпляр того же самого класса.
Создали, связали.
package { import flash.display.Sprite; public class SomeBaseClass extends Sprite { public function SomeBaseClass() { super(); var e1:Class1 = new Class1(); var e2:Class1 = new Class1(); e1.link = e2; } } }
package { public class Class1 { private var secretField:String = "I`m your secret"; public var link:Class1; public function Class1() { } } }
Я думал, что нет и приватное поле будет скрыто отовсюду.
Приватное поле - поле, доступное только этому классу и никакому другому.
Всю флеш-жизнь верил, что речь идёт об экземпляре класса. Оказалось - о классе в целом.
Если мы объявим в супер-секретном-классе метод с трейсом информации о секретном-коде другого экземепляра по ссылке:
И вызовем:
То вполне себе получим адекватный ответ:
Цитата:
I`m your secret
В C говорят, что это классы-друзья, ну и логично что класс друг сам себе.
Всего комментариев 13
Комментарии
14.09.2010 14:29 | |
Не понял, о чем тема?
PS. А в чем смысл н-го количества пустых строк? Вместо того, чтобы окинуть все одним взором, приходится постоянно скроллировать. |
14.09.2010 15:19 | |
Из хелпа
Цитата:
Показывает, что переменная, константа или метод доступны только для класса, который объявляет или определяет их
|
14.09.2010 15:40 | |
Мне что не нравится. Что нет нормального вступления, да и итог хромает. Смысл размазан по тексту и чтобы понять о чем пойдет речь, нужно весь прочитать и посмотреть примеры (еще хуже, когда нужно этот пример еще и компилировать самому), даже если читатель уже в курсе. Основа текст - код лишь подкрепление для тех, кто хочет сам проверить. Это как бы пожелание.
|
|
Обновил(-а) iNils 14.09.2010 в 15:55
|
14.09.2010 15:46 | |
Psycho Tiger, видать под эйфорией - 2 новых поста в блоге и в каждый въезжать нужно ))
|
14.09.2010 15:48 | |
Окей, подправлю сейчас.
i.o.: в 4 раз переделываю паззл, всё время новые "пожелания". Расслабляюсь, пиша (как слово правильно это пишется? =D) сюда. |
14.09.2010 16:35 | |
krolser, я ведь не говорил что это плохо и всё в этом духе. Конкретно мне это развязывает руки, делаю поля приватными вместо internal. Захотел вот поделится.)
|
20.09.2010 23:09 | |
Это в написании метода clone() помогает
|
20.09.2010 23:52 | |
Прошу прощения, но статья стилистически не понравилась.
|
Последние записи от Psycho Tiger
- Тонкости и трюки ActionScript`а, которые... бесполезны (10.05.2011)
- Vkontakte: как пользоваться wall.post, нужен ли теперь wall.savePost? (05.03.2011)
- А пятый контер-страйк хорош. (19.01.2011)
- Пацаны, гоу Вконтакте? (21.12.2010)
- Давайте начистоту (18.12.2010)