Junior — Middle
Ի՞նչ առանձնահատկություններ և սահմանափակումներ կան Kotlin-ի տվյալների դասերում։
sobes.tech AI
Պատասխան AI-ից
Դատարկ դասեր (data class) Kotlin-ում նախատեսված են տվյալների պահպանում համար և ավտոմատ կերպով տրամադրում են օգտակար մեթոդներ՝ equals(), hashCode(), toString(), copy() և դիստրակտուրացման ֆունկցիաներ:
Նկարագրություններ և սահմանափակումներ:
- Կլասը պետք է ունենա առնվազն մեկ պարամետր կոնստրուկտորում:
- Բոլոր կոնստրուկտորի պարամետրերը, որոնք հայտարարված են
primary constructor-ում, ավտոմատ կերպով դառնում են հատկություններ: - Կլասը չի կարող լինել աբստրակտ, բաց, ներքին կամ ժառանգել այլ դասերից (բայց կարող է իրականացնել ինտերֆեյսներ):
- Կոմպիլատորը միայն կոնստրուկտորում հայտարարված հատկությունների համար է ստեղծում մեթոդներ, ոչ ավելին:
- Կարող եք վերագրել գեներացված մեթոդները, եթե ցանկանում եք փոխել վարքագիծը:
Օրինակ:
data class User(val name: String, val age: Int)
val user1 = User("Alice", 30)
val user2 = user1.copy(age = 31) // կստեղծի նոր օբյեկտ փոփոխված տարիքով
println(user1) // User(name=Alice, age=30)