C#基础知识详解之【字段与属性】
讲理论知识之前,先看一段代码:
public class Emp
{//字段private int age;//属性public int Age{get { return age; }set { age = value; }}
}
大家可以看到上面实例代码中,声明了一个名为age的字段,还有一个名为Age的属性,在C#中,一般属性名是字段名的首字母大写(字段名为age,属性名为Age),那么有人可能不明白属性到底是什么?有什么作用?
属性(Property) 是类(class)、结构(structure)和接口(interface)的命名成员。类或结构中的成员变量或方法称为 字段(Field)。属性(Property)是字段(Field)的扩展,且可使用相同的语法来访问。它们使用 访问器(accessors) 让私有域的值可被读写或操作。
让我们在回到上面的案例中,假如用户输入一个不符合实际的年龄,例如200,或者-18岁,如果我们不做点处理的话,肯定会造成数据不安全不严谨,那么对于这样的问题,我们需要怎样限制呢?
可以这样:
public class Emp
{//字段private int age;//属性public int Age{get { return age; }set {if(value <= 100 && value>=0){age = value;}else{age = 18;}}}
}
上面代码的含义就是,如果传入的年龄是0-100之间的数,那么实际年龄即传入年龄,否则实际年龄即是18;
接下来我们看看怎么进行调用属性:
static void test() {Emp emp = new Emp();//赋值:emp.Name = "周树人";//获取值string name = emp.Name;Console.WriteLine(name);}
运行结果:
周树人
一般,如果我们对该字段没有特殊需求进行限制时,我们可以使用这种写法:
public class Emp
{//字段private int age;//属性public int Age{get { return age; }set { age = value; }}
}
参考文章:菜鸟教程
文章地址:https://www.runoob.com/csharp/csharp-property.html
欢
迎
关
注
公众号:雄雄的小课堂
CSDN:穆雄雄的博客
C#基础知识详解之【字段与属性】相关推荐
- 网络管理之基础知识详解
网络管理之基础知识详解 目录 3.1 网络的特征 3.2 拓扑结构 4.1 OSI简介 4.2 数据传输过程 4.3 分层作用 4.4 PDU 5.1 单播 5.2 多播 5.3 广播 5.4 三种通 ...
- 【BLE】OTA基础知识详解
[BLE]OTA基础知识详解 一. 概念 1. 缩写 BIM Boot Image Manager , the software bootloader CRC cyclic redundancy ch ...
- R语言基础知识详解及概括
R语言基础知识详解及概括 目录 R语言基础知识详解及概括 R数据可视化示例 R语言进行数据创建
- R语言可视化绘图基础知识详解
R语言可视化绘图基础知识详解 图形参数:字体.坐标.颜色.标签等: 图像符号和线条: 文本属性: 图像尺寸及边界: 坐标轴.图例自定义等: 图像的组合: #install.packages(c(&qu ...
- 计算机网络相关知识 参考博客 子网掩码怎么理解 网关及网关的作用 路由器基础知识详解
子网掩码怎么理解 https://blog.csdn.net/farmwang/article/details/64132723 网关及网关的作用 https://blog.csdn.net/zhao ...
- RabbitMQ基础知识详解
RabbitMQ基础知识详解 2017年08月28日 20:42:57 dreamchasering 阅读数:41890 标签: RabbitMQ 什么是MQ? MQ全称为Message Queue, ...
- Android随机点名器,Excel基础知识-详解随机点名器
说道制作个案例纯粹意外,我多少有点选择恐惧症,为了不在"选择"上纠结,就自己小玩了一下,就用了程序做了个选择器,其实很简单,就是有小时候玩的"点兵点将",稍微变 ...
- Python基础知识详解 从入门到精通(八)魔法方法
目录 Python基础知识详解 从入门到精通(八)魔法方法 什么是魔法方法 基础魔法方法(较为常用) 比较操作符 算数运算符 反运算(类似于运算方法) 增量赋值运算 一元操作符 类型转换 上下文管理( ...
- 工业相机基础知识详解
工业相机基础知识详解 工业相机是机器视觉系统的一个最关键的组件.他的功能很简单,就是将被检测的物体拍摄下来,然后转换成电脑可以识别的图像,以便以后进行图像处理,从而完成检测任务.工业相机俗称工业摄像机 ...
- 小白入门!网络安全基础知识详解(附知识问答)
小白入门!网络安全基础知识详解(附知识问答) 一.引论 提到网络安全,一般人们将它看作是信息安全的一个分支,信息安全是更加广义的一个概念:防止对知识.事实.数据或能力非授权使用.误用.篡改或拒绝使用所 ...
最新文章
- java step1:基础知识5(java中Timer和TimerTask的使用)
- JQuery Tab菜单的实现
- hdu3793 判断对称(水题)
- 针对视觉位姿估计特征点优化问题的详细研究
- Console.log对象显示
- 关于CDC在非控件类中的使用
- 数据库oracle有哪些函数,Oracle函数大全
- 张宇真题全解(纯题目)
- python Django项目汇总(毕设、课设、学习)
- 对数函数log()用法
- Codeforces 1092D1. Great Vova Wall (Version 1)
- Easyui之datagrid修改
- 达内微软mta证书有用吗_mta证书值得拿吗 怎么样才能拿到mta证书
- vs 没法f12_键盘快捷键 - F12不再适用于Visual Studio
- 服务器可以指定一个网卡只和某个地址通信吗_彻底搞懂计算机网络通信设备与协议...
- Android /iPhone/iPad UI之常用图标尺寸规范
- 7-4 鸿鸿哥分钱(C++)
- 顺利解决org.yaml.snakeyaml.error.YAMLException: java.nio.charset.MalformedInputException!
- 化工单元操作复习题(含答案)
- AE基础教程第一阶段——14塌陷
热门文章
- 含根号的导数怎么求_数学分析Mathematical Analysis笔记整理 第四章 导数与微分
- Opencv SVM demo
- HDU 6579 Operation (前缀线性基模板题)
- #3864. Hero meet devil dp套dp + 状压 + 状态机
- FZU - 2042 The Mad Mathematician 数位dp + 算贡献
- LG P4899 [IOI2018] werewolf 狼人(kruskal重构树,二维数点)
- P2000 拯救世界
- Double Strings
- 牛客题霸 [旋转字符串]C++题解/答案
- 牛客网【每日一题】4月21日题目精讲 糖糖别胡说,我真的不是签到题目