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