class Class1
{

public string name

get
{
return name;
}
set
{
name=value;
} }name变量在哪里定义的,我怎么没看见

解决方案 »

  1.   

    using System;namespace propertysample
    {
    class Class1
    {
    pirvate string name;
    public string Name

    get
    {
    return name;
    }
    set
    {
    name=value;
    } } [STAThread]
    static void Main(string[] args)
    {
    //
    // TODO: 在此处添加代码以启动应用程序
    Class1 a=new Class1();
    a.Name="111";
    Console.Write(a.Name);
    }
    }
    }
      

  2.   

    当然是递归了。
    C# 中的属性其实是一种特殊的方法,本质上是方法而不是字段,不占内存空间。
    属性的一般用法是封装对另外一个字段的访问:
    class Class1
    {
      private m_name;
      public string Name
      {
        get { return m_name;}
        set { m_name = value;}
      }
    }
      

  3.   

    pirvate string name;
    public string Name与你的不同之处,看清楚 了
      

  4.   

    class Class1
    {
       private string name;  //定义字段
    public string Name    //我改了一下

    get
    {
    return name;
    }
    set
    {
    name=value;
    } } [STAThread]
    static void Main(string[] args)
    {
    //
    // TODO: 在此处添加代码以启动应用程序
    Class1 a=new Class1();
    a.Name="111";
    Console.Write(a.name);
    }
    }