Junior
¿Qué es el ámbito (scoped) en C#?
sobes.tech AI
Respuesta de la IA
El ámbito en C# determina la disponibilidad de variables, métodos y tipos en una parte específica del programa. Es una restricción sobre dónde en el código se puede usar un identificador determinado.
Áreas principales de alcance:
- Bloque de código: Las variables declaradas dentro de llaves
{ }solo están disponibles dentro de ese bloque. - Alcance del método: Las variables y parámetros declarados dentro de un método solo están disponibles dentro de ese método.
- Alcance de clase/estructura: Los miembros de una clase o estructura (campos, propiedades, métodos) están disponibles dependiendo de los modificadores de acceso (public, private, protected, internal).
- Alcance del espacio de nombres: Los tipos declarados en un espacio de nombres están disponibles en ese espacio de nombres y en otros espacios de nombres donde se use
using. - Alcance de ensamblado: Los tipos con el modificador
internalsolo están disponibles dentro del ensamblado actual.
Ejemplo de ámbito de bloque de código:
public void ExampleMethod()
{
int x = 10; // x solo está disponible dentro de ExampleMethod
if (x > 5)
{
int y = 20; // y solo está disponible dentro del bloque if
Console.WriteLine(y);
}
// Console.WriteLine(y); // Error de compilación: y no está disponible aquí
}