C# 属性get和set示例

using System;

public class Customer

{

    private int m_id = -1;

    public int ID

    {

        get

        {

            return m_id;

        }

        set

        {

            m_id = value;

        }

    }

    private string m_name = string.Empty;

    public string Name

    {

        get

        {

            return m_name;

        }

        set

        {

            m_name = value;

        }

    }

} 

public class CustomerManagerWithProperties

{

    public static void Main()

    {

        Customer cust = new Customer();

        cust.ID = 1;

        cust.Name = "Amelio Rosales";

        Console.WriteLine(

          "ID: {0}, Name: {1}",

           cust.ID,

           cust.Name);

       Console.ReadKey();

    }

}
 
C# 属性get和set

属性通过属性对类中的字段进行读写来提供保护字段的机会。在其他语言中,这通常是通过实现专门的getter和setter方法的程序来完成的。C#属性启用了这种类型的保护,同时也允许您像字段一样访问属性。属性相对于字段的另一个好处是,您可以随着时间的推移更改其内部实现。对于公共字段,基础数据类型必须始终相同,因为调用代码取决于字段是相同的。但是,使用属性可以更改实现。例如,如果客户的ID最初存储为int,则可能会发生需求更改,从而执行验证,以确保调用代码永远不能将ID设置为负值。如果是字段,您将永远无法做到这一点,但是属性允许您在不中断代码的情况下进行这样的更改。

日期:2020-04-11 23:03:48 来源:oir作者:oir