Sobes.tech
Junior — Middle

Чӣ гуна функсионалиро дар объект ё синф бо истифода аз васеъкуниҳо васеъ кардан мумкин аст?

sobes.tech AI

Ҷавоб аз AI

Дар Android (ҳақиқатан дар Kotlin, ки аксар вақт барои таҳияи Android истифода мешавад) васеъкунии (extensions) имкон медиҳанд, ки функсияҳо ё хосиятҳои нав ба синфҳои мавҷуда илова карда шаванд, бе ниёз ба мерос ё тағир додани коди манбаъ.

Ин бо истифода аз калимаи калидии fun барои функсияҳои васеъкунӣ ё val/var барои хосиятҳои васеъкунӣ анҷом дода мешавад.

Масалан, функсияи васеъкунӣ барои синфи String:

fun String.isEmailValid(): Boolean {
    return this.contains("@") && this.contains(".")
}

// Истифода:
val email = "test@example.com"
println(email.isEmailValid())  // true

Бинобар ин, васеъкуниҳо имкон медиҳанд, ки функсионалиятро ба синфҳо ба осонӣ илова кунем, ки ин коди бештар хонданӣ ва модулӣ мекунад.