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

C#-এ internal এবং private মডিফায়ারের পার্থক্য


Internal Access Specifier

Internal access specifier একটি ক্লাসকে তার সদস্য ভেরিয়েবল এবং সদস্য ফাংশনগুলিকে বর্তমান অ্যাসেম্বলিতে অন্যান্য ফাংশন এবং অবজেক্টের কাছে এক্সপোজ করতে দেয়।

Internal access specifier সহ যেকোনো সদস্য সেটি যে অ্যাপ্লিকেশনে ডিফাইন করা হয়েছে, সেটির যেকোনো ক্লাস বা মেথড থেকে অ্যাক্সেস করা যায়।

নিচে একটি উদাহরণ দেওয়া হলো −

উদাহরণ

using System; namespace RectangleApplication {    class Rectangle {       //member variables       internal double length;       internal double width;       double GetArea() {          return length * width;       }       public void Display() {          Console.WriteLine("Length: {0}", length);          Console.WriteLine("Width: {0}", width);          Console.WriteLine("Area: {0}", GetArea());       }    }//end class Rectangle    class ExecuteRectangle {       static void Main(string[] args) {          Rectangle r = new Rectangle();          r.length = 4.5;          r.width = 3.5;          r.Display();          Console.ReadLine();       }    } }

Private Access Specifier

Private access specifier একটি ক্লাসকে তার সদস্য ভেরিয়েবল এবং সদস্য ফাংশনগুলিকে অন্যান্য ফাংশন এবং অবজেক্ট থেকে লুকাতে দেয়। শুধু একই ক্লাসের ফাংশনগুলিই তার প্রাইভেট সদস্যগুলি অ্যাক্সেস করতে পারে।

নিচে একটি উদাহরণ দেওয়া হলো −

উদাহরণ

using System; namespace RectangleApplication {    class Rectangle {       private double length;       private double width;       public void Acceptdetails() {          length = 10;          width = 15;       }       public double GetArea() {          return length * width;       }       public void Display() {          Console.WriteLine("Length: {0}", length);          Console.WriteLine("Width: {0}", width);          Console.WriteLine("Area: {0}", GetArea());       }    }    class ExecuteRectangle {       static void Main(string[] args) {          Rectangle r = new Rectangle();          r.Acceptdetails();          r.Display();          Console.ReadLine();       }    } }

  1. C#-এ ইন্টারফেস এবং অ্যাবস্ট্রাক্ট ক্লাসের পার্থক্য

  2. C#-এ ইন্টারফেস (Interface) এবং ক্লাস (Class) এর পার্থক্য

  3. C#-এ লিটারেল (Literal) এবং কনস্ট্যান্ট (Constant) এর পার্থক্য

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