Sobes.tech
Junior

Ce este domeniul de vizibilitate (scoped) în C#?

sobes.tech AI

Răspuns de la AI

Domeniul de vizibilitate în C# determină disponibilitatea variabilelor, metodelor și tipurilor într-o anumită parte a programului. Este o restricție asupra locului în care în cod poate fi utilizator un identificator anumit.

Principalele domenii de vizibilitate:

  • Bloc de cod: Variabilele declarate în interiorul acoladelor { } sunt disponibile doar în interiorul acestui bloc.
  • Domeniul metodei: Variabilele și parametrii declarați în interiorul unei metode sunt disponibili doar în interiorul acesteia.
  • Domeniul clasei/structurii: Membrii clasei sau structurii (câmpuri, proprietăți, metode) sunt disponibili în funcție de modificatorii de acces (public, private, protected, internal).
  • Domeniul spațiului de nume: Tipurile declarate în spațiul de nume sunt disponibile în acest spațiu și în alte spații de nume unde se folosește using.
  • Domeniul asamblării: Tipurile cu modificatorul internal sunt disponibile doar în cadrul asamblării curente.

Exemplu de domeniu de vizibilitate a blocului de cod:

public void ExampleMethod()
{
    int x = 10; // x este disponibil doar în interiorul metodei ExampleMethod
    if (x > 5)
    {
        int y = 20; // y este disponibil doar în interiorul blocului if
        Console.WriteLine(y);
    }
    // Console.WriteLine(y); // Eroare de compilare: y nu este disponibil aici
}