Sobes.tech
Junior — Middle

Nesne yönelimli programlamada soyut sınıf kavramının ne anlama geldiğini açıklayabilir misiniz?

sobes.tech yapay zeka

AI'dan gelen yanıt

Nesne yönelimli programlamada soyut sınıf, doğrudan örnekleri oluşturulmaya uygun olmayan bir sınıftır. Diğer sınıflar için şablon görevi görür ve hem uygulanmış metodlar hem de (uygulama olmadan) soyut metodlar içerebilir; bu metodlar alt sınıflarda uygulanmalıdır.

Örneğin, Dart (Flutter dili) dilinde, soyut sınıf abstract anahtar kelimesi kullanılarak tanımlanır:

abstract class Animal {
  void makeSound(); // soyut metod

  void breathe() {
    print('Nefes alıyor'); // uygulanmış metod
  }
}

class Dog extends Animal {
  @override
  void makeSound() {
    print('Hav');
  }
}

void main() {
  // Animal animal = Animal(); // Hata: soyut sınıfın örneği oluşturulamaz
  Dog dog = Dog();
  dog.makeSound(); // Hav
  dog.breathe();   // Nefes alıyor
}

Bu şekilde, soyut sınıf genel bir arayüz ve temel işlevsellik belirlerken, somut sınıflar detayları uygular.