วิธีการขยายเป็นวิธีการแบบคงที่ ซึ่งถูกเรียกราวกับว่าเป็นวิธีอินสแตนซ์ในประเภทขยาย ด้วยวิธีส่วนขยาย คุณสามารถเพิ่มวิธีการให้กับประเภทที่มีอยู่โดยไม่ต้องสร้างประเภทที่ได้รับใหม่ คอมไพล์ใหม่ หรือแก้ไขประเภทดั้งเดิม
ต่อไปนี้เป็นวิธีการขยายที่เราสร้างขึ้น
public static int myExtensionMethod(this string str) { return Int32.Parse(str); }
มาดูตัวอย่างกันว่าเราใช้วิธีขยายผลกันอย่างไร
ตัวอย่าง
using System; using System.Text; namespace Program { public static class Demo { public static int myExtensionMethod(this string str) { return Int32.Parse(str); } } class Program { static void Main(string[] args) { string str1 = "565"; int n = str1.myExtensionMethod(); Console.WriteLine("Result: {0}", n); Console.ReadLine(); } } }
ผลลัพธ์
Result: 565