1. 程式人生 > >38.C#--面對對象靜態函數和非靜態函數的區別

38.C#--面對對象靜態函數和非靜態函數的區別

靜態函數 的區別 names 字體 str urn ram program args

//一.新建Person類
namespace _38.面對對象靜態函數和非靜態函數的區別
{
//新建個Person類
public class Person
{
private static string _name; //靜態字段
public static string Name //屬性,對字體的限定
{
get { return Person._name; }
set { Person._name = value; }

    }

    private char _gender;   //字段
    public char Gender    //屬性,對字體的限定
    {
        get { return _gender; }
        set { _gender = value; }
    }

    public void M1()    //方法
    {
        Console.WriteLine("我是一個非靜態方法!");
    }

    public static void M2()   //方法
    {
        Console.WriteLine("我是一個靜態方法!");
    }
}

}

//二.主函數
namespace _38.面對對象靜態函數和非靜態函數的區別
{
class Program
{
static void Main(string[] args)
{
//以下是重點,區別實例成員和靜態成員的調用
//調用實例成員,先new一個對象,然後用對象去調用
Person p = new Person();
p.M1();
//靜態方法調用,直接類名去點方法名
Person.M2();

        Console.WriteLine();
        Console.ReadKey();

    }
}

}

38.C#--面對對象靜態函數和非靜態函數的區別