Junior
Ի՞նչ է աբստրակտ դասը։
sobes.tech AI
Պատասխան AI-ից
Աբստրակտ դասը այն դասն է, որը հնարավոր չէ անմիջապես ստեղծել new օպերատորի միջոցով: Այն ծառայում է որպես հիմք մյուս դասերի համար և կարող է պարունակել աբստրակտ մեթոդներ (անհատականացման առանց) և սովորական մեթոդներ (հատուկացման հետ): Աբստրակտ դասերը սահմանվում են abstract բանալի բառով:
Հիմնական հատկանիշներ:
- Չի կարելի ինստանցացնել: Չի հնարավոր ստեղծել աբստրակտ դասի օբյեկտ:
- Կարող է պարունակել աբստրակտ մեթոդներ: Մեթոդներ առանց մարմնի, որոնք պետք է վերագրեն ժառանգական դասերը:
- Կարող է պարունակել սովորական մեթոդներ: Մեթոդներ, որոնք ունեն իրականացման, և կարող են ժառանգվել կամ վերագրել:
- Ենթադրվում է ժառանգություն: Ժառանգական դասերը ժառանգում են աբստրակտ դասից և պետք է իրականացնել նրա բոլոր աբստրակտ մեթոդները:
Օրինակ:
abstract class Shape {
// Աբստրակտ մեթոդ առանց իրականացման
double getArea();
// Սովորական մեթոդ իրականացմամբ
void describe() {
print('Սա фигուրա է։');
}
}
class Circle extends Shape {
double radius;
Circle(this.radius);
// Աբստրակտ մեթոդի իրականացում
@override
double getArea() {
return 3.14 * radius * radius;
}
}
class Square extends Shape {
double side;
Square(this.side);
// Աբստրակտ մեթոդի իրականացում
@override
double getArea() {
return side * side;
}
}