Junior — Middle
Nesnelerin dağıtım ve paketleme süreçleri arasındaki farkları ve referans ve değer parametrelerinin iletimindeki farkları, referans tipleri ve yapılarla çalışma bağlamında açıklayın.
sobes.tech yapay zeka
AI'dan gelen yanıt
C# dilinde:
Boxing (kapsülleme) — bir değer türünü (örneğin, yapı) referans türü bir nesneye (object) dönüştürme süreci. Bu, değerin yığında bir kopyasını oluşturur.
Unboxing (kapsül çözme) — ters süreç, nesneden değeri tekrar değer türüne çıkarma.
Örnek:
int x = 123; // değer türü
object o = x; // boxing
int y = (int)o; // unboxing
Parametrelerin iletimi:
- Değere göre (değer türleri için varsayılan): değer kopyalanır, metod içindeki değişiklikler orijinali etkilemez.
- Referansla (ref, out): değişkene referans iletilir, metod içindeki değişiklikler orijinal üzerinde etkili olur.
Referans türleri için, referansın bir kopyası iletilir, nesne değil. Nesnenin alanlarındaki değişiklikler dışarıdan görünür, ancak referansın yeniden atanması görünmez.
Özetle:
- Kapsülleme — değer türünü object içine sarmak.
- Kapsül çözme — object içinden değer türünü çıkarmak.
- Değere göre iletim — veri kopyası.
- Referansa göre iletim — veriye referans iletimi.