Static之静态方法

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();
}
}
}
posted @ 2011-03-02 22:13  焦涛  阅读(207)  评论(0)    收藏  举报