C#,get和set属性访问器

1、获取和设置字段(属性)的值
get是读取属性时进行的操作,set是设置属性时进行的操作。
他们的使用与方法非常类似,可以在操作字段时根据一些规则和条件来设置或获取字段的值。为了保证字段的安全性,可以选择省去get访问器或set访问器。
2、定义属性的语法形式如:

public 数据类型 属性名
{
	get
	{
		获取属性的语句块;
		return 值;
	}
	set
	{
		设置属性得到语句块;
	}
}

在 C# 语言中可以将属性的定义简化如下:
public 数据类型 属性名{get;set;}
这种方式也被称为自动属性设置。

class Bank
{
 	private int money;//私有字段
 	public int Money
 	{
 		//get访问器,返回已经被赋值的私有变量money
 		get{return money;}
 		//set访问器,将打入的赋值给私有变量money
 		set{momey = value;}
 	}
}
//Money属性就像银行里的自动存取款机,你看不见里面的money,但你能用set(存钱),用get(取钱)。money是一个私有字段,是分装在类中的,类以外的程序不能直接访问的,类的set和get成员是外部程序访问类内部属性的唯一方法,就像你去银行取钱,你不能直接从银行的保险柜里拿到钱,而是银行营业人员把钱取出来给你的。

GET和SET能让赋值和取值增加限制

public string BillName
{
   get
     {
         return billName;
     }
     set
     {
         if (value==string.Empty)
         {
             throw new Exception("单据名称不能为空");
         }
         else if (value.Length > 40)
         {
             throw new Exception("单据名称长度不能超过40个字符");
         }
         else
         {
             this.billName = value;
         }
     }
  }

如果在SET访问器中设置这个属性的一些特性,比如说不能为空,长度大小,必须为数字,各类正则表达式等等,然后抛出异常,表示层再来接受,这样就可以少写很多验证程序了。

封装性、安全性、完整性

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值