Sobes.tech
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;
  }
}