VB.NET-এ Module হল একটি রেফারেন্স টাইপ যা শেয়ার্ড (স্ট্যাটিক) মেম্বার ধারণ করে এবং ইনস্ট্যান্সিয়েট করা যায় না। C#-এ এর সমতুল্য হল static class।
তুলনা
| VB.NET Module | C# Static Class |
|---|---|
Module MyModule | public static class MyClass |
| সব মেম্বার শেয়ার্ড (Shared) | সব মেম্বার static হতে হবে |
| ইনস্ট্যান্সিয়েট করা যায় না | ইনস্ট্যান্সিয়েট করা যায় না | গ্লোবাল অ্যাক্সেস | নেমস্পেস দিয়ে অ্যাক্সেস |
VB.NET উদাহরণ
Module MyModule
Public Sub Display()
MsgBox("Demo!")
End Sub
End Module
' কল: MyModule.Display()
C# সমতুল্য
public static class MyModule
{
public static void Display()
{
Console.WriteLine("Demo!");
}
}
// কল: MyModule.Display();
Static Class-এর নিয়ম
staticকিওয়ার্ড ক্লাসে লাগাতে হয়।- সব মেম্বার (ফিল্ড, মেথড, প্রোপার্টি)
staticহতে হবে। - ইনস্ট্যান্স কনস্ট্রাক্টর নেই (স্ট্যাটিক কনস্ট্রাক্টর থাকতে পারে)।
- ইনহেরিট করা যায় না (সিলড বাই ডিফল্ট)।
ব্যবহারিক উদাহরণ: ইউটিলিটি ক্লাস
public static class StringExtensions
{
public static bool IsNullOrEmpty(this string s) => string.IsNullOrEmpty(s);
public static string Truncate(this string s, int len) => s.Length > len ? s[..len] : s;
}