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

封装性、安全性、完整性

发布了9 篇原创文章 · 获赞 3 · 访问量 1198
展开阅读全文

没有更多推荐了,返回首页

©️2019 CSDN 皮肤主题: 大白 设计师: CSDN官方博客

分享到微信朋友圈

×

扫一扫,手机浏览