Sobes.tech
Junior

Abstrakt sinif nədir?

sobes.tech Süni İntellekt

AI-dan cavab

Məntiqi sinif, birbaşa new operatoru ilə yaradıla bilməyən sinifdir. Bu, digər siniflər üçün baza kimi xidmət edir və abstrakt metodlar (tətbiqi olmayan) və adi metodlar (tətbiqi olan) içərə bilər. Abstrakt siniflər abstract açar sözü ilə təyin olunur.

Əsas xüsusiyyətlər:

  • İnstance edilə bilməz: Özünün abstrakt sinfinin obyekti yaradıla bilməz.
  • Abstrakt metodlar içərə bilər: Bədənləri olmayan metodlar, ki, onları törəmə siniflər yenidən təyin etməlidir.
  • Adi metodlar içərə bilər: Tətbiqi olan metodlar, miras alınabilir və ya yenidən təyin edilə bilər.
  • İrsi: Törəmə siniflər, abstrakt sinifdən irs alır və onun bütün abstrakt metodlarını həyata keçirməlidir.

Nümunə:

abstract class Shape {
  // Bədənsiz abstrakt metod
  double getArea();

  // Tətbiqi olan adi metod
  void describe() {
    print('Bu bir fiqirdir.');
  }
}

class Circle extends Shape {
  double radius;

  Circle(this.radius);

  // Abstrakt metodun həyata keçirilməsi
  @override
  double getArea() {
    return 3.14 * radius * radius;
  }
}

class Square extends Shape {
  double side;

  Square(this.side);

  // Abstrakt metodun həyata keçirilməsi
  @override
  double getArea() {
    return side * side;
  }
}