Junior — Middle
Programlamada bağlamında const ve readonly anahtar kelimeleri arasındaki fark nedir ve hangi durumlarda kullanımları daha uygundur?
sobes.tech yapay zeka
AI'dan gelen yanıt
C# dilinde, const anahtar kelimesi, derleme zamanında bilinen ve çalışma sırasında değiştirilemeyen sabitleri tanımlamak için kullanılır. Bu değerler primitif veya literal olmalı ve hemen başlatılmalıdır.
readonly ise, yalnızca sınıfın bildirimi veya yapıcı fonksiyonunda ayarlanabilen alanlar için kullanılır. Başlatıldıktan sonra değeri değiştirilemez, ancak çalışma zamanında hesaplanabilir.
Ne zaman kullanılır:
const— derleme zamanında bilinen değişmeyen değerler için (örneğin, sayılar, dizgeler).readonly— değer yalnızca çalışma zamanında biliniyorsa, örneğin, yapıcı parametrelerine bağlıysa.
Örnek:
public class Example {
public const double Pi = 3.1415; // derleme zamanında biliniyor
public readonly DateTime CreatedAt;
public Example() {
CreatedAt = DateTime.Now; // çalışma zamanında başlatma
}
}