Özet - Native extension
- Dart kursu
- Uzman
- Ders 24/47
- 5 dk
extension method, operator ve generic'i birleştirerek bir string yardımcı extension'ı yazarsın.
Özet: Native extension
Bu grupta Dart extension'larını gördük: extension var olan türe dışarıdan metot ekler; extension method this ile erişir; extension operator operatör aşırı yükler.
Generic extension tür parametresi alır; extension vs subclass kararında durum ve polymorphism belirleyicidir. Bu özette tüm bu kavramları birleştiren bir string yardımcı extension'ı yazacaksın.
Uygulama Özet: StringEx extension
Bir StringEx extension'ı tanımla: on String olsun ve iki metot içersin: String shout() => toUpperCase() + '!'; ve int wordCount() => split(' ').length;. main içinde print('merhaba dünya'.shout()); ve print('merhaba dünya'.wordCount()); çağrılarını ekle.
Başlangıç kodu
void main() {
// StringEx extension'ını tanımla (on String; shout ve wordCount)
// shout ve wordCount çağrılarını yazdır
}Örnek çözüm
extension StringEx on String {
String shout() => toUpperCase() + '!';
int wordCount() => split(' ').length;
}
void main() {
print('merhaba dünya'.shout());
print('merhaba dünya'.wordCount());
}Beklenen çıktı
MERHABA DÜNYA! 2
Soru ve cevaplar
Dersin sorularını cevaplarıyla birlikte inceleyebilirsin. Kendini denemek istersen dersi interaktif olarak çöz.
1 Extension metodları nasıl çözümlenir?
- Derleme anında statik Doğru cevap
- Hiç çözümlenmez
- Çalışma anında dinamik
- Alt sınıfta
Açıklama: extension metodları derleme anında statik olarak çözümlenir.
2 Extension kavramlarını eşleştir
| Kavram | Anlamı |
|---|---|
extension method |
This ile erişim |
extension operator |
Operatör aşırı yükleme |
generic extension |
Tür parametresi |
subclass |
Kalıtım ve polymorphism |
3 Extension adı
extension ____ on String {
String shout() => toUpperCase() + '!';
}
extension StringShout on String {
String shout() => toUpperCase() + '!';
}
Açıklama: StringShout extension'ın adıdır.