Packages and Imports (Gói và Nhập)
🎯 Mục tiêu: Hiểu cách tổ chức code với Package và sử dụng Import để tái sử dụng code.
📦 Package Declaration
Mỗi file Kotlin thường bắt đầu bằng khai báo package. Nó giúp gom nhóm các class, function liên quan lại với nhau.
package org.example
fun printMessage() { /*...*/ }
class Message { /*...*/ }- Tên đầy đủ (Fully Qualified Name - FQN) của hàm trên là
org.example.printMessage. - Nếu không khai báo package, file sẽ thuộc về default package (không có tên).
📥 Imports
Để sử dụng code từ package khác, bạn cần import chúng.
Import cơ bản
import org.example.Message // Import một class cụ thể
import org.example.* // Import tất cả (scope)Import Alias (Đổi tên khi import)
Rất hữu ích khi có xung đột tên (VD: View của Android và View của custom library).
import org.example.Message
import org.test.Message as TestMessage // Đổi tên để tránh trùng
fun main() {
val msg1 = Message()
val msg2 = TestMessage()
}Import đặc biệt
Kotlin cho phép import nhiều hơn là chỉ Class:
- Top-level functions & properties
- Object declarations
- Enum constants
import kotlin.math.PI
import kotlin.math.cos
fun main() {
println(cos(PI))
}🛡️ Default Imports
Kotlin tự động import một số package cơ bản vào mọi file, bạn không cần import thủ công:
kotlin.*(Any, Int, String…)kotlin.annotation.*kotlin.collections.*(List, Map…)kotlin.io.*(print, println…)kotlin.ranges.*kotlin.text.*java.lang.*(trên JVM)
🛠️ Thực hành
Bài tập 1: Tổ chức package
Tạo cấu trúc package:
com.bumbii.utilschứa hàmlog(msg: String)com.bumbii.appchứa hàmmaindùng hàmlog
// File: utils.kt
package com.bumbii.utils
fun log(msg: String) = println("[Log]: $msg")
// File: main.kt
package com.bumbii.app
import com.bumbii.utils.log
fun main() {
log("Hello World")
}✅ Checklist
- Khai báo package ở đầu file
- Import class từ package khác
- Sử dụng
asđể giải quyết xung đột tên - Biết các default imports của Kotlin
Last updated on