একটি নেস্টেড ক্লাস হলো অন্য একটি এনক্লোজিং ক্লাসের ভিতরে ডিক্লেয়ার করা ক্লাস এবং এর ইনার ও আউটার ক্লাস থাকে। এটি এর এনক্লোজিং ক্লাসের একটি মেম্বার এবং এনক্লোজিং ক্লাসের মেম্বারদের নেস্টেড ক্লাসের মেম্বারদের অ্যাক্সেস নেই।
C#-এ নেস্টেড ক্লাসের উদাহরণ কোড স্নিপেট দেখি।
এখানে class Two একটি লোকাল ইনার ক্লাস:
উদাহরণ
class One
{
public int num1;
public class Two
{
public int num2;
}
}
class Demo
{
static void Main()
{
One x = new One();
x.num1++;
One.Two xy = new One.Two();
xy.num2++;
}
}
উদাহরণটি দেখায় যে class Two একটি নেস্টেড ক্লাস। class Two class One ডিক্লেরেশনের ভিতরে এনক্লোজড।
class Two এখানে class One ডিক্লেরেশনের ভিতরে এনক্লোজড। তাই class Two একটি নেস্টেড ক্লাস। যেহেতু এর পাবলিক অ্যাক্সেসিবিলিটি মডিফায়ার আছে, তাই এটিকে class One-এর স্কোপ বাইরেও অ্যাক্সেস করা যায়।