Özet - Sınıflar
- TypeScript kursu
- Orta seviye
- Ders 5/89
- 4 dk
Sınıflarla bir banka hesabı modeli yazarsın.
Özet - Sınıflar
Bir BankAccount sınıfı; owner ve balance örnek alanlarını, static totalAccounts ile toplam hesap sayacını, constructor ve deposit metotlarını birleştirir. Her yeni hesapta sayaç artar.
class BankAccount {
owner: string;
balance: number;
static totalAccounts: number = 0;
constructor(owner: string) {
this.owner = owner;
this.balance = 0;
BankAccount.totalAccounts++;
}
deposit(amount: number): void {
this.balance += amount;
}
}Uygulama Banka hesabı sınıfı yaz
BankAccount sınıfını tanımla: owner: string ve balance: number alanları, static totalAccounts: number = 0 sayacı. constructor(owner: string) balance'ı 0 yapar ve BankAccount.totalAccounts'u artırır. deposit(amount: number): void metodu balance'a ekler. İki hesap oluştur, birine 100 yatır, balance ve totalAccounts yazdır.
Başlangıç kodu
// BankAccount sınıfı tanımla (sahip ve bakiye)
// toplam hesap sayısı sınıf düzeyinde, başlangıç 0
// constructor sahip alır, bakiye 0 yapar, sayaç artar
// deposit metodu bakiyeye ekleme yapar
// iki hesap oluştur, birine 100 yatır
// bakiye ve toplam hesap sayısını yazdırÖrnek çözüm
class BankAccount {
owner: string;
balance: number;
static totalAccounts: number = 0;
constructor(owner: string) {
this.owner = owner;
this.balance = 0;
BankAccount.totalAccounts++;
}
deposit(amount: number): void {
this.balance += amount;
}
}
const a1 = new BankAccount("Ada");
const a2 = new BankAccount("Bob");
a1.deposit(100);
console.log(a1.balance);
console.log(BankAccount.totalAccounts);Beklenen çıktı
100 2
Soru ve cevaplar
Dersin sorularını cevaplarıyla birlikte inceleyebilirsin. Kendini denemek istersen dersi interaktif olarak çöz.
1 Bir BankAccount sınıfında balance alanı hangi türde olmalıdır?
- string
- boolean
- static
- number Doğru cevap
Açıklama: Bakiye sayısal bir değer olduğu için number türünde olmalıdır. static bir tür değil, bir erişim belirtecidir; string ve boolean yanlış türlerdir.
2 Balance başlangıç değerini tamamla
constructor(owner: string) {
this.owner = owner;
this.balance = ____;
}
constructor(owner: string) {
this.owner = owner;
this.balance = 0;
}
Açıklama: Yeni bir hesap açıldığında bakiye 0'dan başlar. 1 yanlış başlangıç, "0" string (number bekleniyor), null ise number değil.
3 Banka hesabı parçaları
| Kavram | Anlamı |
|---|---|
class BankAccount |
Sınıf tanımı |
constructor(owner: string) |
Kurucu metod |
deposit(amount: number) |
Örnek metodu |
static totalAccounts |
Sınıf düzeyinde sayaç |