Từ khóa const
const dùng cho biến có giá trị không đổi suốt vòng đời ứng dụng. Chỉ áp dụng cho thuộc tính bất biến (read-only) của class. Ràng buộc:
- Chỉ dùng với thuộc tính immutable.
- Không gán bằng hàm hoặc constructor; chỉ kiểu nguyên thủy hoặc String.
- Khởi tạo tại compile-time.
Ví dụ const
const val sName = "tutorialspoint"
// const val myFun = MyFunc() // Lỗi: không dùng const với function call
fun main() {
println("Example of Const-Val--->$sName")
}
Kết quả
Example of Const-Val--->tutorialspoint
Từ khóa val
val cũng khai báo thuộc tính read-only nhưng khác biệt:
- Khởi tạo tại runtime.
- Có thể gán bằng kết quả hàm.
- Nội dung có thể mutable (nếu là object), nhưng tham chiếu không đổi.
Ví dụ val với hàm
const val sName = "tutorialspoint"
val myfun = MyFunc() // OK với val
fun main() {
println("Example of Const-Val--->$sName")
println("Example of Val--->$myfun")
}
fun MyFunc(): String {
return "Hello Kotlin"
}
Kết quả
Example of Const-Val--->tutorialspoint Example of Val--->Hello Kotlin
Tóm tắt: const val = hằng số compile-time; val = biến read-only runtime.