Sınıf

Nesneleri oluşturmak için kullanıcı tarafından tanımlanan, verilerini (öznitelikler) ve davranışlarını (metotlar) belirten bir taslak veya şablon.

Sınıf, nesne yönelimli programlamada (OOP) temel bir kavramdır. Nesneler (örnekler) oluşturmak için bir mimari taslak görevi görür.

Bir Sınıfın Bileşenleri:
- Öznitelikler (Alanlar/Özellikler): Nesnenin saklayacağı veriler (örn. isim, yas).
- Metotlar (Fonksiyonlar): Nesnenin gerçekleştirebileceği eylemler (örn. havla(), maasHesapla()).
- Yapıcı (Constructor): Yeni nesneleri başlatmak için özel metot.

Sınıf-Nesne İlişkisi:
Eğer Araba sınıfsa, kirmiziToyotam o sınıfın bir nesnesidir (örneğidir).

        graph LR
  Center["Sınıf"]:::main
  Pre_object_oriented_programming["object-oriented-programming"]:::pre --> Center
  click Pre_object_oriented_programming "/terms/object-oriented-programming"
  Rel_object["object"]:::related -.-> Center
  click Rel_object "/terms/object"
  classDef main fill:#7c3aed,stroke:#8b5cf6,stroke-width:2px,color:white,font-weight:bold,rx:5,ry:5;
  classDef pre fill:#0f172a,stroke:#3b82f6,color:#94a3b8,rx:5,ry:5;
  classDef child fill:#0f172a,stroke:#10b981,color:#94a3b8,rx:5,ry:5;
  classDef related fill:#0f172a,stroke:#8b5cf6,stroke-dasharray: 5 5,color:#94a3b8,rx:5,ry:5;
  linkStyle default stroke:#4b5563,stroke-width:2px;

      

🧒 5 yaşındaki gibi açıkla

Bir sınıf, bir evin mimari planı gibidir. Size kaç oda olacağını ve pencerelerin nereye gideceğini söyler. Ama planın içinde yaşayamazsınız. Plana dayanarak gerçek evi (nesneyi) inşa etmeniz gerekir. Aynı plandan (sınıf) birçok farklı ev (nesne) inşa edebilirsiniz.

🤓 Expert Deep Dive

Sınıflar çok biçimliliği (polymorphism), kalıtımı (inheritance) ve kapsüllemeyi (encapsulation) tanımlar. Soyut sınıflar (abstract classes) örneklenemez ve alt sınıflar için temel görevi görür. Arayüzler (interfaces), uygulama olmadan sözleşmeleri tanımlar. Meta sınıflar (Python/Smalltalk'ta), sınıfları oluşturan sınıflardır. Statik üyeler örneklere değil, sınıfın kendisine aittir.

🔗 İlgili terimler

📚 Kaynaklar