using System; using System.Collections.Generic; using System.Linq; using System.Text; //1.静态方法能够访问类中的全部静态成员,但不能访问实例成员 //2.非静态方法能够访问静态成员和非静态成员 //3.在构造器中只能对非静态成员使用this关键字 namespace StaticMethod { class SQLServerDb { static string progressString1="starting repair..."; string progressString2="...repair finished"; public static void RepairDatabase() { Console.WriteLine("repairing database..."); } //静态方法能够访问类中的全部静态成员,但不能访问实例成员 public static void RepirWithStrings() { Console.WriteLine(progressString1);//语法正确 //Console.WriteLine(progressString2);//语法错误 } //非静态方法能够访问静态成员和非静态成员 public void InstanceRepair() { Console.WriteLine(progressString1);//语法正确 Console.WriteLine(progressString2);//语法正确 } public SQLServerDb() { } public SQLServerDb(string s1, string s2) { //this.progressString1 = s1;//语法错误 //在构造器中只能对非静态成员使用this关键字 this.progressString2 = s2; } } class Program { static void Main(string[] args) { SQLServerDb.RepairDatabase(); SQLServerDb db = new SQLServerDb(); db.InstanceRepair(); Console.ReadKey(); } } }