Библиотека книг по компьютерным технологиям
⇒ ⇒ Разработка Windows-приложений на Microsoft Visual Basic .NET и Microsoft Visual C# .NET. Учебный курс MCAD/MCSD
⇒ ⇒ ⇒ Глава 1. Введение в .NET Framework
⇒ ⇒ ⇒ ⇒ Занятие 4. Методы

Читать далее: Параметры

Переменные методов

Говорят, что область видимости переменных, объявленных внутри метода, ограничена этим методом. Это означает, что по завершении исполнения метода они уничтожаются, а занятая ими память освобождается. О таких переменных говорят, что они вышли из области видимости.

Область видимости переменных, объявленных внутри структур метода, еще более ограничена. Например, область видимости переменных, объявленных внутри цикла ForNext (в 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.

Google
 
Рейтинг@Mail.ru
Сайт управляется системой uCoz