কম্পিউটার টিউটোরিয়াল

C#-এ virtual এবং abstract ফাংশনের পার্থক্য

Virtual ফাংশন

  • বেস ক্লাসে ইমপ্লিমেন্টেশন থাকে।
  • ডেরাইভড ক্লাসে override করে পরিবর্তন করা যায় (ঐচ্ছিক)।
  • অবস্ট্রাক্ট বা নন-অবস্ট্রাক্ট ক্লাসে থাকতে পারে।

Abstract ফাংশন

  • বেস ক্লাসে ইমপ্লিমেন্টেশন নেই (শুধু সিগনেচার)।
  • ডেরাইভড ক্লাসে অবশ্যই override করতে হয়।
  • শুধু abstract ক্লাসে থাকতে পারে।

Virtual উদাহরণ

class Shape {
    public virtual int Area() { return 0; }
}
class Rectangle : Shape {
    public override int Area() { return width * height; }
}

Abstract উদাহরণ

abstract class Vehicle {
    public abstract void Display();
}
class Car : Vehicle {
    public override void Display() => Console.WriteLine("Car");
}

আউটপুট (Abstract উদাহরণ)

Bus
Car
Motorcycle
  1. DirectX 11 এবং DirectX 12-এর পার্থক্য কী?

  2. জাভাস্ক্রিপ্টে ফাংশন ও মেথডের পার্থক্য

  3. C#-এ String (ক্লাস) এবং string (এলিয়াস) এর পার্থক্য

  4. C#-এ লিস্ট এবং অ্যারেতে পার্থক্য (List vs Array)