C#中的类、属性、方法、实例之间的区别与联系? 5
1个回答
展开全部
字段
字段是被视为类的一部分的对象的实例,通常用于保存类数据。例如,日历类可能具有一个包含当前日期的字段。
可以选择将字段声明为 static。这使得调用方在任何时候都能使用字段,即使类没有任何实例。
可以将字段声明为 readonly。只读字段只能在初始化期间或在构造函数中赋值。
static readonly 字段非常类似于常数,只不过 C# 编译器不能在编译时访问静态只读字段的值,而只能在运行时访问。
属性
属性是类中可以像类中的字段一样访问的方法。属性可以为类字段提供保护,以避免字段在对象不知道的情况下被更改。
属性使类能够以一种公开的方法获取和设置值,同时隐藏实现或验证代码。
get 属性访问器用于返回属性值,而 set 访问器用于分配新值。这些访问器可以有不同的访问级别。
value 关键字用于定义由 set 索引器分配的值。
不实现 set 方法的属性是只读的。
对于不需要任何自定义访问器代码的简单属性,可考虑选择使用自动实现的属性。看个示例:public class userInfo
{
//字段
private string name; //其它类不能访问
public int age; //其它类可访问,但既可赋值,也可取值。
//属性
public string Name //其它类可访问,但只能赋值,不能取值。
{
//注释了get就只能给Name赋值,而不能取值。反之依然
//get{return name;}
set
{
//TODO:可以调用方法等其它操作。 这里就是一个方法,方法名为set,参数为value;
name=value;
}
}
} .方法
方法定义类可以执行的操作。方法可以接受提供输入数据的参数,并且可以通过参数返回输出数据。方法还可以不使用参数而直接返回值。事件
事件向其他对象提供有关发生的事情(如单击按钮或成功完成某个方法)的通知。事件是使用委托定义和触发的。
字段是被视为类的一部分的对象的实例,通常用于保存类数据。例如,日历类可能具有一个包含当前日期的字段。
可以选择将字段声明为 static。这使得调用方在任何时候都能使用字段,即使类没有任何实例。
可以将字段声明为 readonly。只读字段只能在初始化期间或在构造函数中赋值。
static readonly 字段非常类似于常数,只不过 C# 编译器不能在编译时访问静态只读字段的值,而只能在运行时访问。
属性
属性是类中可以像类中的字段一样访问的方法。属性可以为类字段提供保护,以避免字段在对象不知道的情况下被更改。
属性使类能够以一种公开的方法获取和设置值,同时隐藏实现或验证代码。
get 属性访问器用于返回属性值,而 set 访问器用于分配新值。这些访问器可以有不同的访问级别。
value 关键字用于定义由 set 索引器分配的值。
不实现 set 方法的属性是只读的。
对于不需要任何自定义访问器代码的简单属性,可考虑选择使用自动实现的属性。看个示例:public class userInfo
{
//字段
private string name; //其它类不能访问
public int age; //其它类可访问,但既可赋值,也可取值。
//属性
public string Name //其它类可访问,但只能赋值,不能取值。
{
//注释了get就只能给Name赋值,而不能取值。反之依然
//get{return name;}
set
{
//TODO:可以调用方法等其它操作。 这里就是一个方法,方法名为set,参数为value;
name=value;
}
}
} .方法
方法定义类可以执行的操作。方法可以接受提供输入数据的参数,并且可以通过参数返回输出数据。方法还可以不使用参数而直接返回值。事件
事件向其他对象提供有关发生的事情(如单击按钮或成功完成某个方法)的通知。事件是使用委托定义和触发的。
本回答被网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询