Junior — Middle
რა არის sealed მორგატორით გამოყოფილი კლასის დანიშნულება?
sobes.tech AI
პასუხი AI-სგან
sealed მოდიფიკატორით გამოცხადებული კლასი განკუთვნილია მემკვიდრეობის შეზღუდვისთვის. ასეთი კლასი შეიძლება ჰქონდეს ქვესახეები, მაგრამ მხოლოდ იმ ფაილში გამოცხადებულები, სადაც ის არის. ეს საშუალებას აძლევს კონტროლს და მემკვიდრეობის იერარქიის განსაზღვრას, რაც მას უფრო წინასწარმეტყველებად და უსაფრთხოდ ხდის.
მაგალითად, Kotlin-ში sealed კლასები ხშირად გამოიყენება შეზღუდული მდგომარეობების ან ვარიანტების ნაკრების გამოსახატავად, რაც სასარგებლოა when გამოთქმებთან მუშაობისას, სადაც კომპილატორი შეუძლია შეამოწმოს ყველა ვარიანტის სრული დამუშავება.
sealed class Result {
data class Success(val data: String) : Result()
data class Error(val error: Throwable) : Result()
}
fun handleResult(result: Result) {
when(result) {
is Result.Success -> println("მონაცემები: ${result.data}")
is Result.Error -> println("შეცდომა: ${result.error.message}")
}
}