Object Declaration và Singleton trong Kotlin
🎯 Mục tiêu: Hiểu Object Declaration - cách tạo singleton trong Kotlin.
💡 Khái niệm
Object declaration tạo singleton - class chỉ có 1 instance duy nhất.
object Database {
private val connections = mutableListOf<String>()
fun connect(url: String) {
connections.add(url)
println("Connected to $url")
}
}
fun main() {
Database.connect("localhost:5432")
Database.connect("localhost:3306")
}📝 Cú pháp
object MySingleton {
val property = "value"
fun method() { }
}
// Sử dụng
MySingleton.property
MySingleton.method()🔧 Object Expression (Anonymous Object)
val clickListener = object : OnClickListener {
override fun onClick(v: View) {
println("Clicked!")
}
}
// Với nhiều interfaces
val obj = object : InterfaceA, InterfaceB {
override fun methodA() { }
override fun methodB() { }
}🎯 Companion Object
class User(val name: String) {
companion object {
fun create(name: String) = User(name)
const val MAX_NAME_LENGTH = 50
}
}
// Gọi như static
val user = User.create("Alice")
val max = User.MAX_NAME_LENGTH✅ Checklist
- Tạo singleton với
object - Sử dụng object expression
- Sử dụng companion object
Last updated on