Junior — Middle
Paaiškinkite, kas yra abstrakti klasė ir kuo ji skiriasi nuo įprastos klasės.
sobes.tech AI
Atsakymas iš AI
Abstracti klasė yra klasė, kuri nėra skirta tiesioginiam pavyzdžių kūrimui. Jos pagrindinė funkcija yra būti pagrindu kitoms klasėms. Abstrakčioje klasėje gali būti abstraktūs metodai — metodai be įgyvendinimo, kurie turi būti įgyvendinti pogrupiuose.
Skirtumai nuo įprastos klasės:
- Negalima tiesiogiai sukurti abstrakčios klasės objekto.
- Ji gali turėti abstrakčius metodus.
- Naudojama apibrėžti bendrą sąsają ir elgseną grupei pogrupių.
Pavyzdys Kotlin (Android):
abstract class Animal {
abstract fun makeSound()
fun sleep() {
println("Miega")
}
}
class Dog : Animal() {
override fun makeSound() {
println("Au")
}
}
fun main() {
val dog = Dog()
dog.makeSound() // Išves: Au
dog.sleep() // Išves: Miega
}