Junior
Чӣ гуна метавон чандин конструкторро дар як синф дар Kotlin амалӣ кард?
sobes.tech AI
Ҷавоб аз AI
Дар Kotlin, синф метавонад як асосӣ конструктор ва як ё чанд конструкторҳои ёрирасон дошта бошад.
-
Асосӣ конструктор: Дар сари синф муайян карда мешавад. Мумкин аст параметрҳо дошта бошад.
class МанСинфиМан(private val баъзеХусусият: String) { // Асосӣ конструктор бо параметр // Танаи синф } -
Конструкторҳои ёрирасон: Бо калимаи калидии
constructorэълон мешаванд. Агар синф дорои конструктори асосӣ бошад, ҳар як конструктори ёрирасон бояд мустақим ё ғайримустақим ба он такя кунад, бо истифода азthis().class БаъзеКласс(private val арзишиАсосӣ: Int) { // Асосӣ конструктор constructor дигарАрзиш: String) : this(дигарАрзиш.length) { // Конструктор ёрирасон, ки ба асосӣ такя мекунад // Логикаи конструктори ёрирасон println("Тав created бо сатр: $дигарАрзиш") } constructor(арзиш1: Int, арзиш2: Int) : this(арзиш1 + арзиш2) { // Боз як конструктор ёрирасон // Логика println("Тав created бо ду int: $арзиш1, $арзиш2") } }
Агар конструктори асосӣ набошад, конструкторҳои ёрирасон маҷбур нестанд, ки ба дигар конструкторҳо такя кунанд (аммо метавонанд).
class БеАсосӣ {
constructor(арзиш: Int) {
println("Тав created бо int: $арзиш")
}
constructor(арзиш: String) {
println("Тав created бо сатр: $арзиш")
}
}