擴充套件類是一種靜態的一種類的呼叫方法,通過例項化進行呼叫。利用this進行指正該類,有引數的時候直接在後面追加引數。
//必須定義為公共的靜態類 public static class Studentinfo{ //定義一個新增學生姓名的擴充套件方法 public static string AddStuname(this string stuname){ return studentname; } //新增多個引數的擴充套件方法 public static string AddStudentinfo(this string stuname,string stunum){ return string.Format("學生資訊: "+"學生姓名:{0} "+"學生學號:{1}",stuname,stunum); } } //這種方法跟一般的呼叫方法一致 //例項化類然後直接使用函式就行 class Students { public static void Main(string[] args){ studentinfo stu=new studentinfo(); string stuinfo=stu.Addstuname(); string stuinfos=stu.AddStudentinfo("sldkfj","001"); Console.WriteLine(stuinfo); Console.WriteLine(stuinfos); } } //為stu類擴充套件(一般用於不知道類中的原始碼,只知道功能時候) pulic class Stu{ public void foo(){ .... } public void fo(string stuname,string stuno){ .... } } //stu類的擴充套件類 public static class ExtenStu{ //傳參進行類的例項化 public static string ExtenStuAdd(this Stu student){ return student.foo(); } //傳參進行類的例項化,有引數在後面追加 public static string ExtenStuAddinfo(this Stu students,string stusname,string stusnum) { return students.fo(stusname,stusnum); } }