Özet - Paketler
- Kotlin kursu
- Orta seviye
- Ders 105/116
- 5 dk
package, import ve internal'ı birleştirerek bir modül yapısı kurarsın.
Özet - Paketler
Bu grupta package ile ad alanı bildirmeyi, import ile tür içe aktarmayı, internal ile modül görünürlüğünü, Gradle ile yapı yönetimini ve kotlinx ek kütüphanelerini öğrendin.
Şimdi bunları birleştireceksin: bir dosyaya package ve import koyup File kullanacak, ardından internal bir sınıf tanımlayacaksın. Bu yapı, Kotlin projelerinin düzen temelidir. İleride modüler mimari ve sürüm katalogları bu temelin üzerine inşa edilir.
Uygulama package ve import birleştir
Dosyanın en üstüne package com.example.app yaz. Ardından import java.io.File ekle. main içinde val f = File("kayit.txt") ile bir File nesnesi oluştur ve println(f) ile yazdır.
Başlangıç kodu
// paket: com.example.app
// java.io.File sınıfını içe aktar
// main: File nesnesi oluştur (kayit.txt yolu) ve println ile yazdır
fun main() {
// buraya yaz
}Örnek çözüm
package com.example.app
import java.io.File
fun main() {
val f = File("kayit.txt")
println(f)
}Beklenen çıktı
kayit.txt
Uygulama internal sınıf ve package birleştir
Dosyanın en üstüne package com.example.tools yaz. Ardından import java.io.File ekle. internal class Helper tanımla; içinde fun info(f: File): String = f.toString() olsun. main içinde val h = Helper() ile örnek oluştur ve println(h.info(File("kayit.txt"))) ile sonucu yazdır.
Başlangıç kodu
// paket: com.example.tools
// java.io.File içeri aktar
// Helper sınıfını internal tanımla; info metodu f'nin yolunu döndürsün
// main: Helper örneği ile info'yu çağır ve println ile yazdır
fun main() {
// buraya yaz
}Örnek çözüm
package com.example.tools
import java.io.File
internal class Helper {
fun info(f: File): String = f.toString()
}
fun main() {
val h = Helper()
println(h.info(File("kayit.txt")))
}Beklenen çıktı
kayit.txt
Soru ve cevaplar
Dersin sorularını cevaplarıyla birlikte inceleyebilirsin. Kendini denemek istersen dersi interaktif olarak çöz.
1 Hangisi modül düzeyinde görünürlük sağlar?
- internal Doğru cevap
- protected
- public
- private
Açıklama: internal, tanımı aynı modülle sınırlar.
2 Paket kavramlarını eşle
| Kavram | Anlamı |
|---|---|
package |
Ad alanı |
import |
İçe aktarma |
internal |
Modül görünürlüğü |
kotlinx |
Ek kütüphaneler |