⇒ Библиотека книг по компьютерным технологиям
⇒ ⇒ Разработка Windows-приложений на Microsoft Visual Basic .NET и Microsoft Visual C# .NET. Учебный курс MCAD/MCSD
⇒ ⇒ ⇒ Глава 1. Введение в .NET Framework
⇒ ⇒ ⇒ ⇒ Занятие 4. Методы
Читать далее: Параметры
Говорят, что область видимости переменных, объявленных внутри метода, ограничена этим методом. Это означает, что по завершении исполнения метода они уничтожаются, а занятая ими память освобождается. О таких переменных говорят, что они вышли из области видимости.
Область видимости переменных, объявленных внутри структур метода, еще более ограничена. Например, область видимости переменных, объявленных внутри цикла For
—Next
(в C# — for
), ограничена этим циклом, то есть они доступны лишь в его пределах. Вот пример:
Visual Basic .NET
Public Sub myMethod() Dim X As Integer For X = 1 To 100 Dim Y As Integer Y = X Next X ' Эта строка вызовет ошибку Console.WriteLine(Y.ToString) End Sub
Visual C#
public void myMethod() { int X; for(X = 1; X < 101; X++) { int Y; Y = X; } // Эта строка вызовет ошибку Console.WriteLine(Y.ToString()); }
Visual Basic позволяет объявлять внутри метода переменные, которые не уничтожаются по завершении исполнения этого метода. Такие переменные называются статическими переменными метода, они остаются в памяти, сохраняя свое значение, в течение нескольких вызовов метода. Чтобы сделать переменную статической, необходимо при ее объявлении указать ключевое слово Static
, например, так:
Visual Basic .NET
Public Sub myMethod() Static Iterations As Integer ' При каждом вызове метода значение этой ' переменной будет увеличиваться на 1. Iterations += 1 End Sub
Статическая переменная метода присутствует в памяти постоянно, но доступна только во время выполнения метода, в котором она объявлена. Такие переменные позволяют отслеживать, сколько раз вызывался метод.
Примечание. В C# таких переменных нет. В этом языке имеется ключевое слово static
, но у него совсем другой смысл, подробнее о нем рассказано на занятии 5.
Все книги представлены на сайте исключительно для ознакомления с содержанием. |