Junior
Фарқи байни усулҳои оддӣ ва васеъкунии Kotlin чист?
sobes.tech AI
Ҷавоб аз AI
Рӯйхати оддӣ — функсияест, ки дар дохили синф эълон мешавад.
Рӯйхати васеъкунӣ — функсияест, ки берун аз синф эълон мешавад, аммо ҳамчун узви он амал мекунад. Дар эълони рӯйхати васеъкунӣ, номи синфи қабулкунанда, ки ба он татбиқ мешавад, нишон дода мешавад.
// Рӯйхати оддӣ
class MyClass {
fun myMethod() {
// иҷрои рӯйхат
}
}
// Рӯйхати васеъкунӣ
fun String.removeVowels(): String {
// иҷрои рӯйхат
}
fun main() {
val myObject = MyClass()
myObject.myMethod() // Даъвати рӯйхати оддӣ
val myString = "Hello"
val stringWithoutVowels = myString.removeVowels() // Даъвати рӯйхати васеъкунӣ
}
Тавсифи асосӣ:
- Эълон: Рӯйхатҳои оддӣ дар дохили синф эълон мешаванд, рӯйхатҳои васеъкунӣ — берун.
- Дастрасӣ ба аъзои синф: Рӯйхатҳои оддӣ мустақиман ба аъзои
privateваprotectedдастрасӣ доранд. Рӯйхатҳои васеъкунӣ ба аъзоиprivateваprotectedмустақиман дастрасӣ надоранд. this: Дар рӯйхати оддӣ,thisба намунаи синфе ишора мекунад, ки дар он рӯйхат эълон шудааст. Дар рӯйхати васеъкунӣ,thisба намунаи объекти қабулкунанда ишора мекунад, ки барои он васеъкунӣ даъват мешавад.- Мерос: Рӯйхатҳои оддӣ метавонанд дар зери синфҳо такрор карда шаванд. Рӯйхатҳои васеъкунӣ мерос намебаранд ва такрор карданашон мумкин нест.
- Иҷро: Рӯйхатҳои оддӣ қисми иҷроиши синф мебошанд. Рӯйхатҳои васеъкунӣ ба таври алоҳида татбиқ мешаванд ва синфи аслӣ тағир намедиҳанд.
Рӯйхатҳои васеъкунӣ барои илова кардани функсионалитет ба синфҳои мавҷуда бамавриданд, масалан, ба синфҳои китобхонаҳои беруна ё ба китобхонаҳои стандартии Kotlin.