Sobes.tech
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 using kullanıldığı diğer ad alanlarında erişilebilir.
  • Derleme (Assembly) kapsamı: internal belirteciyle 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
}