一篇文章搞懂C#的封装
1.1.1. 什么是封装?
封装是将对象的内部数据和实现细节隐藏起来,只通过公共方法与外界交互。这样可以保护数据,防止外部代码直接访问和修改。
1.1.2. 如何实现封装?
要实现数据封装需要用到两个元素:私有字段和公共方法;
(1) 将类的字段声明为私有,只能在类内部访问。
(2) 通过公共的 getter 和 setter 方法访问和修改这些字段。C# 提供了属性(Properties)功能,用于简化 getter 和 setter 的编写。
// 定义一个 Person 类来表示个人
class Person
{
// 私有字段,表示个人的姓名和年龄
private string name; // 表示个人的姓名
private int age; // 表示个人的年龄
// 公共属性 Name,用于获取和设置 name 字段
public string Name
{
get { return name; } // 获取 name 字段的值
set { name = value; } // 设置 name 字段的值
}
?
// 公共属性 Age,用于获取和设置 age 字段,可以用来校验数据
public int Age
{
get { return age; } // 获取 age 字段的值
set
{
if (value >= 0) // 确保年龄是非负数
{
age = value; // 设置 age 字段的值
}
}
}
}
?
// 测试程序类
class Program
{
static void Main(string[] args)
{
// 创建一个 Person 类的实例
Person person = new Person();
// 设置姓名和年龄
person.Name = "Alice";
person.Age = 30;
// 输出姓名和年龄
Console.WriteLine(#34;Name: {person.Name}, Age: {person.Age}");
}
}
1.1.3. 封装的优点
优点 | 解释 |
数据保护 | 防止外部代码直接修改内部数据。 |
灵活性 | 通过控制访问方法,可以轻松修改数据逻辑。 |
1.1.4. 访问修饰符
修饰符 | 说明 |
public | 任何代码都能访问。 |
private | 只能在类内部访问。 |
protected | 只能在类内部和派生类中访问。 |
1.1.5. 总结
封装通过隐藏对象内部的实现细节,只允许通过公共方法和属性与外界交互,从而保护数据的完整性和安全性,提高代码的灵活性和可维护性。
上一篇:28.C# 类基础字段与属性
下一篇:C# using用法