C# 封装与继承的概念与区别
更新时间:2026年06月15日 10:15:45 作者:xiaoshuaishuai8
在C#中,封装和继承是面向对象编程(OOP)中的两个核心概念,它们共同支持了代码的复用、维护和扩展,本文给大家介绍C#封装与继承的概念与区别,感兴趣的朋友一起看看吧
封装与继承的概念区别
封装(Encapsulation)是将数据和操作数据的方法绑定在一起,隐藏内部实现细节,仅暴露必要接口。继承(Inheritance)是子类复用父类的属性和方法,并可以扩展或重写。
封装示例代码
public class BankAccount
{
private decimal _balance; // 私有字段,外部无法直接访问
// 公开方法提供受控访问
public void Deposit(decimal amount)
{
if (amount > 0)
_balance += amount;
}
public decimal GetBalance() => _balance;
}继承示例代码
public class Animal // 基类
{
public void Eat() => Console.WriteLine("Eating...");
}
public class Dog : Animal // 派生类
{
public void Bark() => Console.WriteLine("Woof!");
}主要区别对比
封装特点
- 通过
private/protected修饰符控制访问权限 - 使用属性(get/set)管理字段访问
- 核心目标是数据保护和接口简化
继承特点
- 通过
:符号实现类继承 - 支持方法重写(
virtual/override) - 核心目标是代码复用和多态实现
组合使用示例
public class Vehicle // 父类
{
protected int _speed; // 受保护字段(封装)
public virtual void Move() => Console.WriteLine("Moving");
}
public class Car : Vehicle // 子类(继承)
{
private string _model; // 私有字段(封装)
public Car(string model) => _model = model;
public override void Move()
{
_speed = 60; // 访问继承的受保护字段
Console.WriteLine($"{_model} driving at {_speed}km/h");
}
}到此这篇关于C# 封装与继承的概念与区别的文章就介绍到这了,更多相关C# 封装与继承内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!


最新评论