ПОНЯТНО О Visual Basic NET (том 3)




Области видимости - часть 2


Локальные переменные и константы. Тем, в какой области будет виден тот или иной элемент, мы можем управлять при помощи так называемых модификаторов доступа.  Модификаторов доступа всего 5: Public,

Private, Protected,

Friend,  Protected Friend. Кроме этого используется слово Dim.

Внутри процедур и функций переменные могут быть объявлены только при помощи знакомых нам слов Dim и Static, а константы только при помощи слова Const. Это знакомые нам блочная и локальная области видимости и знакомые нам локальные переменные и константы. Они видны только в той процедуре, функции или блоке, в которых объявлены.

Теперь поговорим об элементах, объявленных вне процедур и функций. Это и переменные, и константы, и процедуры, и функции, и модули. Их царство – три нижние области видимости. Они могут быть видны или только в том модуле, где они объявлены (независимо от того, насколько глубоко он угнездился внутри других модулей), или во всем проекте, или в неограниченной области в зависимости от того, при помощи каких слов это было сделано. Конкретно:

Область видимости – модуль. Слова Dim или Private для переменной и слова Const или Private Const для константы делают их видимыми только в своем модуле. Их область видимости – весь этот модуль, включая все процедуры, функции и другие модули (если они есть) внутри модуля. Это модульные переменные и константы.

Обратите внимание, что здесь можно было бы обойтись и без модификатора Private. Но английский смысл слова Private («частная собственность», «вход запрещен») лучше подходит к случаю, поэтому программисты в основном используют его.

Любой другой элемент (процедура, функция, модуль), чтобы быть видимым аналогичным образом только в своем модуле, объявляется модификатором Private.

Область видимости – проект, но не дальше. Если мы хотим, чтобы элемент VB был виден во всем проекте, но не дальше, мы объявляем его модификатором Friend. Часто программистам все равно – дальше или не дальше, и поэтому они употребляют вместо Friend более привычный модификатор Public, обеспечивающий неограниченную видимость




Содержание  Назад  Вперед