C#中属性是什么意思

如题所述

你如果在网上搜下,当然结果会有一堆。所以我也没有必要从网上复制一些概念过来。
就按自己理解的来。

首先我来个简单的假设。
有个用户类(Users) ,里面定义了一个表示年龄的字段 _age 。
如果我在其它的类里需要用到Users类里的_age字段(如获取用户年龄) 只能读取,不能修改。你将会怎么设计Users类里的年龄字段_age呢。是private 、public、还是什么呢?

如果是private 其它内根本看不到。如果是public任何人都可以修改年龄了。
这时我们就可以用到属性了。

private int _age; //定义字段 一般都是private外界是不能随便修改的。
public int Age //定义一个属性。属性是public的。共外界访问。
{
get
{
return _age; //返回年龄
}
}

属性有get;set访问器。获取属性时,会执行get模块。给属性负值时 会执行set模块。
我这里没有写set,也就是说外界是不能修改的。这样就可以满足我们的需要了。

当然这只是一个很简单的一个例子,具体的还是要看你的需求。如获取属性值、设置属性值时都可以在get、set里写自己的逻辑。自己灵活运用。
温馨提示:内容为网友见解,仅供参考
第1个回答  2011-04-09
某个对象的某个特性,就是属性
例:
草莓甜点心
就是你的ID的属性值
例2:
有人名叫张三,
就是这个"人"就是一个对象,他的有个属性:"名字",这个属性的值是:"张三"
例3:
控件按钮"button1"
button1.Text="确定"
也就是这个"按钮"对象的文本属性"Text",它赋的值是"确定"
第2个回答  2011-03-30
属性就是类中的字段或者说是全局变量,当然是封装了的追问

那事件、索引、操作符、构造函数和析构函数又是什么意思呢?谢谢!

追答

事件就是类中的方法;索引要具体到什么的索引,比如数组,索引也称下标,其实就是数组中元素的编号;操作符就是+-*/加减乘除之类的运算符号;构造函数也称构造方法,一般用来方便类初始化,其实就是一个特殊方法,方法名和类名相同,没有返回值,方法体一般是做属性的初始化;析构函数是销毁对象或者释放内存用的,因为C#有垃圾回收机制,一般是不用程序员去考虑释放内存的;

第3个回答  2018-05-24
给属性赋值时

c# 什么叫属性?
属性 就是对象所具有的不可缺少的性质 就比如人的身高 体重 姓名 都是属性

C#中属性和字段的区别
1、C#中属性:C#中属性是限制只能给变量赋于某个范围的值,是有限制的访问私有变量。2、C#中字段:C#中字段是自由的、毫无限制的访问公有变量。二、包含不同 1、C#中属性:C#中属性中包含两个块:set和get,set块负责属性的写入工作,get块负责属性的读取工作。2、C#中字段:C#中字段中不包含set...

C#中属性是什么意思
属性就是a的获取和赋值功能 写法是int a{get;set;}等同于int a;如果去掉set,则a就不能再赋值了,相对的,没了赋值,你就要给get获取一个int数,int a{get{return 2;}}比如这么写,当你取a的值的时候,就只会获得2了,且不能赋值

在C#中什么是属性、方法、事件、继承、接口、封装、索引器?
deleget,委托。就是c++中的函数指针,只是类型安全的。或者你可以理解成它就是一个方法的别名,而且它可以绑定到不同的方法只要规格一致(即参数类型个数,返回值) 封装 在C#中可使用类来达到数据封装的效果,这样就可以使数据与方法封装成单一元素,以便于通过方法存取数据。除此之外,还可以控制数据...

一文说通C#的属性Attribute
属性Attributes在C#编程中扮演着关键角色,它提供了一种将元数据关系到元素的方式,从而简化了代码编写。属性的常见用法是放在类、字段、方法等定义之上,用于指定特定的内容。例如,在C#中,Flags就是一个典型的属性例子。属性不仅在.Net框架中广泛使用,如Serializable用于告诉编译器类可以序列化成JSON或XML...

C#中Property和Attribute的区别
属性的意思就是附属于某种事物上的,用来说明这个事物的各种特征的一种描述。而Attribute就是干这事的。它允许你将信息与你定义的C#类型相关联,作为类型的标注。这些信息是任意的,就是说,它不是由语言本身决定的,你可以随意建立和关联任何类型的任何信息。你可以作用属性定义设计时信息和运行时信息,...

C#: 字段(Field)与属性(Property)
在C#中,类的成员有两种形式:字段和属性。字段的使用和C++或Java中的变量类似,而属性则提供了一种更安全、更灵活的方式来读取和设置字段的值。字段与属性的关系紧密相关。实际上,任何属性总是对应于类中的一个字段,两者之间存在一种对应关系。主要分为两种情况:一是属性访问器读写字段的值,即属性...

c#中字段和属性的区别
在C#中,我们可以非常自由的、毫无限制的访问公有字段,但在一些场合中,我们可能希望限制只能给字段赋于某个范围的值、或是要求字段只能读或只能写,或是在改变字段时能改变对象的其他一些状态,这些单靠字段是无法做到的,于是就有了属性,属性中包含两个块:set和get,set块负责属性的写入工作,get块...

如何通俗易懂的理解和使用C#的属性?
属性相当于字段的代言人,由他出面与使用者打交道。一个例子:class A { \/\/年龄,字段 int age;\/\/年龄,属性,请注意属性不储存值 int Age { get { \/\/我们可以在返回年龄之前对访问者进行权限的检查,如果权限通过就返回 if(check())\/\/检查方法未定义,这里只是表示一下 { return age;\/\/...

怎么更好的理解C#编程中的属性,set和get的用法?
C#的属性本质是一对方法,目的是为了控制类的字段(field)的暴露方式。例如你的类有一个name字段,如果设为public,那么任何拿到这个类实例的使用者都可以无限制地修改name,有时候这不是你想要的结果,比如某函数把name改成了null,这有可能是你不希望见到的。为了避免这个问题,你或许会把name字段设置...

相似回答