手册
目录
在我们开始解释属性之前,您应该对封装有一个基本的了解。
封装的含义是确保“敏感”数据对用户隐藏。为了实现这一目标,您必须:
privateget 和 set 方法来访问和更新私有字段的值您从上一章中学到,private 变量只能在同一个类内部访问(外部类无法访问它)。但是,有时我们需要访问它们——这可以通过属性来实现。
属性就像变量和方法的组合,它有两种方法:get 和 set 方法:
class Person
{
private string name; // 字段
public string Name // 属性
{
get { return name; } // get 方法
set { name = value; } // set 方法
}
}
Name 属性与 name 字段相关联。将属性和私有字段使用相同的名称(但属性的首字母大写)是一种好的做法。
get 方法返回变量 name 的值。
set 方法为 name 变量分配一个值。value 关键字代表我们分配给属性的值。
提示:如果您不完全理解它,请查看下面的实例。
现在我们可以使用 Name 属性来访问和更新 Person 类的私有字段:
class Person
{
private string name; // 字段
public string Name // 属性
{
get { return name; }
set { name = value; }
}
}
class Program
{
static void Main(string[] args)
{
Person myObj = new Person();
myObj.Name = "Elon";
Console.WriteLine(myObj.Name);
}
}
输出将是:
Elon
C# 还提供了一种使用简写/自动属性的方法,您不必为属性定义字段,而只需在属性内部编写 get; 和 set; 即可。
以下实例将产生与上述实例相同的结果。唯一的区别是代码更少:
使用自动属性:
class Person
{
public string Name // 属性
{ get; set; }
}
class Program
{
static void Main(string[] args)
{
Person myObj = new Person();
myObj.Name = "Elon";
Console.WriteLine(myObj.Name);
}
}
输出将是:
Elon
set 方法)。相关
视频
RELATED VIDEOS
科技资讯
1
2
3
4
5
6
7
8
9
精选课程
共5课时
17.2万人学习
共49课时
77万人学习
共29课时
61.7万人学习
共25课时
39.3万人学习
共43课时
71万人学习
共25课时
61.6万人学习
共22课时
23万人学习
共28课时
33.9万人学习
共89课时
125万人学习