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

C#-এ কোভ্যারিয়েন্স এবং কন্ট্রাভ্যারিয়েন্স

কোভ্যারিয়েন্স এবং কন্ট্রাভ্যারিয়েন্স জেনেরিক টাইপ প্যারামিটারের সাথে ইনহেরিটেন্স সম্পর্ক বোঝাতে ব্যবহৃত হয়।

  • কোভ্যারিয়েন্স (out T): একটি বেস টাইপ আশা করা জায়গায় ডেরাইভড টাইপ পাস করার অনুমতি দেয়। অ্যারে, ডেলিগেট, ইন্টারফেসে প্রয়োগ হয়।
  • কন্ট্রাভ্যারিয়েন্স (in T): একটি ডেরাইভড টাইপ আশা করা জায়গায় বেস টাইপ পাস করার অনুমতি দেয়। মূলত মেথড প্যারামিটারে প্রয়োগ হয়।

উদাহরণ

class One { }
class Two : One { }
class Three : Two { }

// কোভ্যারিয়েন্স: বেস টাইপের জায়গায় ডেরাইভড টাইপ
IEnumerable list = new List(); // বৈধ যদি IEnumerable হয়

// কন্ট্রাভ্যারিয়েন্স: ডেরাইভড টাইপের জায়গায় বেস টাইপ
Action action = (Two t) => { }; // বৈধ যদি Action হয়

C#-এ ডেলিগেট এবং ইন্টারফেসে out এবং in কীওয়ার্ড ব্যবহার করে ভ্যারিয়েন্স নির্দিষ্ট করা যায়।

  1. C#-এ প্রাইভেট এবং ফাইনাল মেথড (Private and Final Methods)

  2. C#-এ বেস ক্লাস (Base Class) কী

  3. জাভায় ক্লাস (স্ট্যাটিক) ভেরিয়েবল এবং ইন্সট্যান্স ভেরিয়েবল

  4. পাইথন এক্সসেপশন বেস ক্লাসসমূহ (Exception Base Classes)