Sobes.tech
Junior — Middle

Ինչպե՞ս կարելի է փոխել կամ լրացնել մեթոդների վարքագիծը հիմնական դասից ժառանգելիս Kotlin-ում։

sobes.tech AI

Պատասխան AI-ից

Kotlin- ում հիմնական դասի մեթոդների վարքագծին փոփոխություն կամ լրացում կատարելու համար օգտագործվում է override բառը: Հիմնական դասում մեթոդը պետք է հայտարարվի open մոդիֆիկատորով, որպեսզի այն կարողանա վերագրանցվել ենթակլասում:

Օրինակ՝

open class Base {
    open fun greet() {
        println("Բարև Base-ից")
    }
}

class Derived : Base() {
    override fun greet() {
        super.greet()  // հիմնական դասի մեթոդի կանչ
        println("Բարև Derived-ից")
    }
}

fun main() {
    val obj = Derived()
    obj.greet()
}

Այս օրինակով, Base դասի greet մեթոդը վերագրանցվում է Derived դասում, որտեղ կանչվում է սկզբնական իրականացումը super.greet()-ով, և ավելացվում է լրացուցիչ վարքագիծ:

Մեթոդի վարքագծին փոփոխություն կամ լրացում կատարելու համար՝

  • Հիմնական դասում մեթոդը պետք է լինի open:
  • ենթակլասում մեթոդը նշվում է override-ով:
  • Կարող եք կանչել սկզբնական մեթոդը super-ով՝ լրացնելու համար, ոչ թե փոխարինելու։