Junior — Middle
Оё метавонед мақсади ва истифодаи тағйиргари дастрасии protected дар забони Kotlin-ро шарҳ диҳед?
sobes.tech AI
Ҷавоб аз AI
Дар Kotlin, модификатори дастрасӣ protected маънои онро дорад, ки узви синф дар дохили худи синф ва дар зери синфҳои он (мирос) дастрас аст. Баръакс аз Java, дар Kotlin protected дастрасиро ба узв аз дигар синфҳо дар ҳамон баста намедиҳад.
Масалан истифода:
open class Parent {
protected val secret = "Ин хусусияти муҳофизатшуда"
}
class Child : Parent() {
fun revealSecret() = secret
}
fun main() {
val child = Child()
println(child.revealSecret()) // Кор мекунад
// println(child.secret) // Хатогӣ: secret дар беруни синф ва фарзандони он дастрас нест
}
Аз ин рӯ, protected барои маҳдуд кардани дастрасӣ истифода мешавад, ки ба фарзандон имкон медиҳад, ки узвҳои муҳофизатшуда истифода ва тағир диҳанд, аммо онҳоро аз коди беруна пинҳон мекунад.