Junior
C#'ta kapsam (scoped) nedir?
sobes.tech yapay zeka
AI'dan gelen yanıt
C# dilinde kapsam, değişkenlerin, metodların ve türlerin belirli bir program bölümünde erişilebilirliğini belirler. Bu, belirli bir tanımlayıcının kodda nerede kullanılabileceğine ilişkin bir sınırlamadır.
Ana kapsam alanları:
- Kod bloğu:
{ }içindeki bildirilen değişkenler yalnızca bu blok içinde erişilebilir. - Metod kapsamı: Bir metod içinde bildirilen değişkenler ve parametreler yalnızca bu metod içinde erişilebilir.
- Sınıf/Yapı (Class/Struct) kapsamı: Bir sınıf veya yapının üyeleri (alanlar, özellikler, metodlar), erişim belirteçlerine (public, private, protected, internal) bağlı olarak erişilebilir.
- Ad alanı (Namespace) kapsamı: Bir ad alanında bildirilen türler, bu ad alanında ve
usingkullanıldığı diğer ad alanlarında erişilebilir. - Derleme (Assembly) kapsamı:
internalbelirteciyle tanımlanan türler yalnızca mevcut derleme içinde erişilebilir.
Kod bloğu kapsamına örnek:
public void ExampleMethod()
{
int x = 10; // x sadece ExampleMethod içinde erişilebilir
if (x > 5)
{
int y = 20; // y sadece if bloğu içinde erişilebilir
Console.WriteLine(y);
}
// Console.WriteLine(y); // Derleme hatası: y burada erişilebilir değil
}