ntjm.net
当前位置:首页 >> C字段和属性 >>

C字段和属性

字段是一种数据类型的变量,属性是为该字段提供只读,只写,读写功能.

C#中属性和字段的区别为:访问性不同、包含不同、安全性不同.一、访问性不同1、C#中属性:C#中属性是限制只能给变量赋于某个范围的值,是有限制的访问私有变量.2、C#中字段:C#中字段是自由的、毫无限制的访问公有变量.二、

属性(property)是字段的自然扩展,两者都是具有关联类型的命名成员,而且访问字段和属性的语法是相同的.然而,属性与字段不同,不表示存储位置.相反,属性有访问器(accessor),这些访问器指定在它们的值被读取或写入时需执行

属性是类提供给外部调用时用,的可以使用 对象.属性 设置或读取 一个值 get{reture xxx;}表示可读 set{xxx = value;}表示可写 字段就是类内部用的.存储数据

“龙龙灬小猪 ”兄的解答偏表面“019094087”兄的解答就更离谱了,建议看下:http://msdn.microsoft.com/zh-cn/library/ms173118.aspx属性这玩意儿跟字段最大的区别在于取值赋值的操作逻辑是不一样的,对于字段,就是直接取值赋值,而对

string是C#中字符串类型,String 则是string 对应的真实CLR中的类型 习惯上使用string定义 使用了属性可以对字段进行有效的保护 比如有一个int类型的年龄字段age,如果直接访问字段就可以不受任何约束的进行赋值,读取操作 但是如果有了属性,在赋值时就可以进行有效判断,如果赋值时小于18,则默认是18岁 public int Age { set { age = value<18 ?18 : value; } get { return age; } }

嗯,通常字段是 private,内部使用.属性是 public 或 protected,对外公开,属性通过 get set 访问器对字段提供安全、有效范围等保护.

属性的扩展性要比字段好 带个业务场景:如果有个属性表示年份 public int year{get;set;} 你当然可以写成 public int year; 但在你写完代码后,有一天公司有个需求,有一个two客户,让你把年改为另一种纪元方式 如果是属性你只要 int _year; public int year{get{return _year-1911;}set{_year=value+1911;}} 对原来数据不用做任何改动 不过如果你是字段的话就难改了,所有调用你字段的人也得跟着受罪

属性是字段和方法的一个交集,看起来像是一个字段,但行为上像一个方法.两者访问的愈发是相同的的. 一般的声明方法就是 get{}set{} 字段的话我个人认为就是与类或者对象关联的变量 建议你看一下msdn,自己看的话印象也比较深,加油……

这是指字段: class Card { public string Name; } 这是指属性: class Card { private string name; public string Name { get { return this.name;} set { this.name=value;} } 字段一般定义为私有的,为了防止外界随意访问,属性就是可控的字段访问,让用户通过属性访问字段,我们可以在属性里做很多事,比如判断用户权限、验证用户提供的值的合法性等等等

网站首页 | 网站地图
All rights reserved Powered by www.ntjm.net
copyright ©right 2010-2021。
内容来自网络,如有侵犯请联系客服。zhit325@qq.com