Junior — Middle
Oby explain edə bilərsinizmi, obyekt yönümlü proqramlaşdırmada abstrakt sinif anlayışının nə olduğunu?
sobes.tech Süni İntellekt
AI-dan cavab
Obyekt yönümlü proqramlaşdırmada abstrakt sinf, birbaşa nümunələri yaradılmayan sinfdır. Bu, digər sinflər üçün şablon kimi xidmət edir və həm həyata keçirilmiş metodları, həm də həyata keçirilməmiş (implementasiya olunmamış) abstrakt metodları ehtiva edə bilər, bunlar alt sinflərdə həyata keçirilməlidir.
Məsələn, Dart (Flutter dili) dilində, abstrakt sinf abstract açar sözü ilə elan edilir:
abstract class Animal {
void makeSound(); // abstrakt metod
void breathe() {
print('Nəfəs alır'); // həyata keçirilmiş metod
}
}
class Dog extends Animal {
@override
void makeSound() {
print('Hav');
}
}
void main() {
// Animal animal = Animal(); // Xəta: abstrakt sinfin nümunəsini yarada bilməzsiniz
Dog dog = Dog();
dog.makeSound(); // Hav
dog.breathe(); // Nəfəs alır
}
Beləliklə, abstrakt sinf ümumi interfeys və əsas funksionallıq müəyyən edir, konkret sinflər isə detalları həyata keçirir.