博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
c# 属性
阅读量:5323 次
发布时间:2019-06-14

本文共 783 字,大约阅读时间需要 2 分钟。

在C#中,我们可以非常自由的、毫无限制的访问公有字段,但有时我们可能希望:

(1)限制只能给字段赋于某个范围的值;

(2)或是要求字段只能读或只能写;

(3)或是在改变字段时能改变对象的其他一些状态;

  这些只靠字段是无法做到的,于是就有了属性。

  属性中包含两个块:set和get,set块负责属性的写入工作,get块负责属性的读取工作。

  在两个块中都可以做一些其他操作,如在set中验证赋的值是否符合要求并决定是否进行赋值。

  set和get块中属性必需有一个,因为即不能读又不能写的属性是没有意义的。

  下面举个简单的例子:

(1)属性可以保证安全,当不在本类中使用时,使用属性名可以避免用字段的名字。

1 class MyClass2 {3      private  string  name;4      public string Name5      {6          get {return name;}7          set {name=value;}8      }9 }

(2)属性的set和get函数可以限制字段的一些功能,以达到某种目的。

1 private int a=0; 2 public int A 3 { 4      get{return this.a;} 5      set 6      { 7          if(value >= 0 && value <= 100) 8               this.a=value; 9          else10               throw new Exception("值的范围不合法。");11      }12 }

转载于:https://www.cnblogs.com/suyanteng/p/3947099.html

你可能感兴趣的文章
ubuntu 18.04取消自动锁屏以及设置键盘快捷锁屏
查看>>
Leetcode 589. N-ary Tree Preorder Traversal
查看>>
正则表达式
查看>>
arcgis api 4.x for js 结合 Echarts4 实现散点图效果(附源码下载)
查看>>
YTU 2625: B 构造函数和析构函数
查看>>
apache自带压力测试工具ab的使用及解析
查看>>
加固linux
查看>>
WPF中Image显示本地图片
查看>>
SQL Server中利用正则表达式替换字符串
查看>>
[poj1006]Biorhythms
查看>>
Hyper-V虚拟机上安装一个图形界面的Linux系统
查看>>
Hover功能
查看>>
js千分位处理
查看>>
Mac---------三指拖移
查看>>
字符串类型的相互转换
查看>>
HTTP状态码
查看>>
iOS如何过滤掉文本中特殊字符
查看>>
基础学习:C#中float的取值范围和精度
查看>>
javaagent 简介
查看>>
python升级安装后的yum的修复
查看>>