JavaScript Academy · Ders

Sınıf Alanları, Özel # Alanları, static Üyeler

Genel alanlara sahip sınıflar oluşturun, verileri özel # alanlarıyla gizleyin ve static özellikler/yöntemler ekleyin.

1. ders / 38 adım

Sınıf Alanları, Özel # Alanları, static Üyeler, CoddyKit'te ücretsiz bir JavaScript Academy dersidir. Bu, 3 dersinin 1. dersidir. Aşağıdan dersin tamamını ücretsiz okuyabilir, sonra tarayıcıda yerleşik kod editörü ve 7/24 yapay zeka koçu ile uygulamalı olarak pratik yapabilirsin. Bu, JavaScript Academy öğrenme yolunun bir parçasıdır ve ilerlemeniz web ve CoddyKit uygulaması arasında senkronize olur. JavaScript Academy kursu toplamda 3 dersten oluşur.

Sınıflar neden önemli?

Amaç: Küçük ve anlaşılır sınıflar oluşturmak.

  • Genel alanlar ve yöntemler
  • Gizli durum için #private alanlar
  • Sınıf düzeyindeki yardımcılar için statik özellikler ve yöntemler
  • Örnekleri küçük ve okunabilir tutun
Sınıf Alanları, Özel # Alanları, static Üyeler — resim 1

Genel alanlar ve oluşturucu

Genel bir alan ve küçük yöntemler içeren bir sınıf oluşturun; başlangıç düzeyindeki öğrenciler için mantığı basit tutun.

// Public fields and a simple method
class Counter {
  // public field with default
  value = 0;

  constructor(start) {
    // use a default if start is not provided
    this.value = Number.isFinite(start) ? start : 0;
  }

  inc() {
    this.value = this.value + 1;
  }
}

const c1 = new Counter(2);
c1.inc();
console.log("value:", c1.value); // 3
Sınıf Alanları, Özel # Alanları, static Üyeler — resim 2

Özel # alanlar

#private alanlar dil tarafından zorunlu kılınır ve yalnızca sınıf gövdesi içinde kullanılabilir. Gerekirse okuma yöntemleri sunun.

// Private # fields hide internal state
class SafeCounter {
  // private field (only inside the class)
  #value = 0;

  constructor(start) {
    this.#value = Number.isFinite(start) ? start : 0;
  }

  inc() { this.#value = this.#value + 1; }
  getValue() { return this.#value; } // expose via method
}

const sc = new SafeCounter(5);
sc.inc();
console.log("safe value:", sc.getValue());

// External access fails (uncommenting the next line would throw):
// console.log(sc.#value);
Sınıf Alanları, Özel # Alanları, static Üyeler — resim 3

Güvenli okumalar için alıcılar

Bir alıcı, alanı özel tutarken türetilmiş veya doğrulanmış bir değer döndürebilir.

// Getters provide read-only views; simple guard logic
class User {
  #name = "Anonymous";
  constructor(name) {
    if (typeof name === "string" && name.trim().length > 0) {
      this.#name = name.trim();
    }
  }
  get name() {
    return this.#name;
  }
}

const u = new User(" Ayla ");
console.log("name:", u.name);
Sınıf Alanları, Özel # Alanları, static Üyeler — resim 4

Statik üyeler

Statik üyeler örnekler üzerinde değil, sınıf üzerinde çağrılır (ör. MathHelp.circleArea()).

// Static = belongs to the class, not to instances
class MathHelp {
  static PI = 3.14159;
  static circleArea(r) {
    if (!(typeof r === "number" && r >= 0)) return 0;
    return MathHelp.PI * r * r;
  }
}

console.log("PI:", MathHelp.PI);
console.log("area r=2:", MathHelp.circleArea(2));

// Instances do not have the static members:
const mh = new MathHelp();
console.log("instance has PI?", "PI" in mh); // false
Sınıf Alanları, Özel # Alanları, static Üyeler — resim 5

Başlangıç düzeyine uygun alışkanlıklar

İpuçları:

  • Az sayıda, anlaşılır yöntemi olan küçük sınıfları tercih edin.
  • Gerçek gizlilik için #private kullanın; alt çizgiler yalnızca adlandırma kuralıdır.
  • Sabitleri ve yardımcıları statik üyelere koyun.
  • Dışarıdan erişmeniz gerekiyorsa en az sayıda okuma yöntemi (alıcı) sunun.
Sınıf Alanları, Özel # Alanları, static Üyeler — resim 6

Özel alanların temelleri sınaması

Kısa kontrol: #private alanlar.

Sınıf Alanları, Özel # Alanları, static Üyeler — resim 7

Özet

Özet: Basit durumlar için genel alanları, iç ayrıntıları gizlemek için #private'ı ve sınıf düzeyindeki yardımcılar için statik üyeleri kullanın. Her sınıfı küçük ve okunması kolay tutun.

Sınıf Alanları, Özel # Alanları, static Üyeler — resim 8
Başlamak ücretsiz

Yapay zeka eğitmeniyle JavaScript öğren — ücretsiz

Tarayıcında gerçek kod yaz ve çalıştır, 7/24 yapay zeka eğitmeninden anında yardım al; web'de ya da uygulamada kaldığın yerden devam et.

Kurslar
59
Dersler
200

Sıkça Sorulan Sorular

“Sınıf Alanları, Özel # Alanları, static Üyeler” dersi ücretsiz mi?

Evet — “Sınıf Alanları, Özel # Alanları, static Üyeler” dersin tüm metni burada web'de ücretsiz olarak okunabilir. Etkileşimli olarak pratik yapmak (yerleşik kod editörü ve 7/24 yapay zeka koçu) ve JavaScript Academy kursunun geri kalanını açmak için CoddyKit PRO'ya yükselt. JavaScript Academy kursu toplamda 3 dersten oluşur.

“Sınıf Alanları, Özel # Alanları, static Üyeler” dersinde ne öğreneceğim?

Genel alanlara sahip sınıflar oluşturun, verileri özel # alanlarıyla gizleyin ve static özellikler/yöntemler ekleyin. JavaScript Academy ile uygulamalı kodu tarayıcıda doğrudan çalıştırarak pratik yaparsın ve 7/24 yapay zeka koçu dersi çalışırken sorularını yanıtlar.

JavaScript Academy öğrenmeye başlamak için deneyim gerekli mi?

Önceden deneyim gerekmez. CoddyKit'te JavaScript Academy, başlangıçtan ileri seviyeye kadar yapılandırıldığı için buradan başlayabilir veya başından başlayıp kendi hızında ilerleme yapabilirsin. Bu, 3 dersinin 1. dersidir.

“Sınıf Alanları, Özel # Alanları, static Üyeler” dersi ne kadar sürer?

Çoğu CoddyKit dersi yaklaşık 5–10 dakika sürer. Her biri kısa ve etkileşimli olduğu için sabit ilerleme yaparsın ve web ile uygulama arasında tam olarak bıraktığın yerden devam edebilirsin.

Bu JavaScript Academy dersinde kod yazıp çalıştırabilir miyim?

Evet. Her JavaScript Academy dersi yerleşik bir kod editörü içerir, bu sayede tarayıcıda gerçek kod yazıp çalıştırabilir ve anlık yapay zeka geri bildirimi alırsın — yerel kurulum gerekli değildir.

Bu kursun tüm dersleri

  1. Sınıf Alanları, Özel # Alanları, static Üyeler
  2. Kalıtım, super ve composition'ı Ne Zaman Tercih Etmeli
  3. Karışımlar (Kısa Tanıtım) — Derin Hiyerarşiler Olmadan Basit Yeniden Kullanım
← JavaScript Academy Sayfasına Dön