Menu
Coddy logo textTech

Private Metotlar

Coddy'nin JavaScript Journey'sinin Nesne Yönelimli Programlama bölümünün bir parçası. Ders 19 / 56.

JavaScript sınıflarındaki özel metotlar, uygulama ayrıntılarını gizlemenize ve dahili işlevlere dışarıdan erişimi engellemenize olanak tanır.

ES2022’den itibaren özel yöntemler # ön eki kullanılarak tanımlanabilir:

class Counter {
  #count = 0;
  
  // Özel bir metot oluştur
  #increment() {
    this.#count++;
  }
  
  // Özel metodu kullanan public metot
  addOne() {
    this.#increment();
    return this.#count;
  }
}

Bir Counter örneği oluşturalım:

const myCounter = new Counter();

Genel yöntemi çağırabiliriz:

console.log(myCounter.addOne()); // Çıktı: 1

Ancak özel yönteme doğrudan erişmeye çalışmak bir hataya neden olur:

myCounter.#increment(); // Hata: Private method sınıf dışında erişilemez

Özel metotlar, dahili uygulama ayrıntılarını dış dünyadan gizli tutarak kapsüllemeyi korumaya yardımcı olur.

challenge icon

Görev

Mesajları depolayan bir MessageBox sınıfı veriliyor. Göreviniz, mesajları doğrulayan #isValidMessage(text) adlı özel bir yöntem eklemektir. Bu yöntem:

  • Metin boş değilse ve 100 karakterden kısaysa true döndürmeli
  • Aksi takdirde false döndürmeli

Kendin dene

import { MessageBox } from './messageBox.js';

// Mesaj kutusunu kullanma
const box = new MessageBox();

console.log(box.setMessage("Hello"));    // "Message set!" (uses #isValidMessage)
console.log(box.setMessage(""));         // "Invalid message!" (uses #isValidMessage)
quiz iconKendini test et

Bu ders kısa bir quiz içerir. Soruları yanıtlamak ve ilerlemeni kaydetmek için derse başla.

Nesne Yönelimli Programlama bölümündeki tüm dersler

Kendi başına pratik yap: Online JavaScript derleyicisi