⊗tsSpGnCls 34 of 37 menu

TypeScript'te Genelleştirilmiş Sınıflar

TypeScript'te genelleştirilmiş arayüzlerin yanı sıra genelleştirilmiş sınıflar da yapılabilir.

Genelleştirilmiş tipte bir User sınıfı oluşturalım. Ayrıca genelleştirilmiş tipte bir value özelliği yazalım ve ilgili yapıcı metodu oluşturalım:

class User <T> { value: T; constructor(userData: T) { this.value = userData; } }

Şimdi bu sınıfın bir nesnesini oluşturalım ve özelliğine string bir değer yazalım:

let user = new User('john'); console.log(user.value); // 'john'

Ancak, nesneye oluşturulurken string bir değer atanmışsa, bu değeri başka bir tipe yeniden yazmak mümkün olmayacaktır:

let user = new User('john'); user.value = 35;

Kodu çalıştırmaya çalıştığımızda şu hatayı göreceğiz:

Type 'number' is not assignable to type 'string'.

Ancak aynı zamanda string değeri değiştirebiliriz:

let user = new User('john'); user.value = 'alex'; console.log(user.value); // 'alex'

Dikkat edin, aynı nesnenin özelliğini başka bir tiple değiştiremeyiz, ancak başka bir nesne oluşturabiliriz:

let newUser = new User(35); console.log(newUser.value); // 35
Türkçe
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenЎзбекOʻzbekTiếng Việt
Web sitesinin çalışması, analiz ve kişiselleştirme için çerezleri kullanıyoruz. Veri işleme, Gizlilik Politikası'na uygun olarak gerçekleşir.
tümünü kabul et özelleştir reddet