封装(Encapsulation)封装是面向对象编程(OOP)的基石之一,它将数据和操作数据的方法绑定在一起,形成一个单元——对象。在C中,封装通过以下方式实现:私有访问修饰符:使用private关键...
封装是面向对象编程(OOP)的基石之一,它将数据和操作数据的方法绑定在一起,形成一个单元——对象。在C#中,封装通过以下方式实现:
private关键字定义的成员只能在类内部访问。public关键字定义的成员可以在任何地方访问。protected关键字定义的成员可以在类内部和子类中访问。internal关键字定义的成员只能在同一程序集内访问。public class BankAccount
{ private double balance; // 私有成员变量 public double Balance // 公共属性 { get { return balance; } set { balance = value; } } public void Deposit(double amount) { balance += amount; // 公共方法 } // 私有方法 private void CalculateInterest() { // ... }
}继承允许一个类(子类或派生类)从另一个类(父类或基类)继承属性和行为。C#支持单继承和多继承(通过接口实现)。
public class SavingsAccount : BankAccount
{ public double InterestRate { get; set; } public void ApplyInterest() { // ... }
}多态允许使用基类引用或指针来调用子类的方法。在C#中,多态通过以下方式实现:
virtual的方法可以在子类中重写。public class Customer
{ public virtual void DisplayInfo() { Console.WriteLine("Customer Information"); }
}
public class VIPCustomer : Customer
{ public override void DisplayInfo() { base.DisplayInfo(); Console.WriteLine("VIP Customer Information"); }
}抽象是将复杂的概念简化为更易于理解的模型。在C#中,抽象通过以下方式实现:
public abstract class Vehicle
{ public abstract void Drive();
}
public class Car : Vehicle
{ public override void Drive() { Console.WriteLine("Driving a car"); }
}多态性允许在运行时确定对象的实际类型,并调用相应的方法。C#中的多态性通过以下方式实现:
public class Calculator
{ public int Add(int a, int b) { return a + b; } public int Add(int a, int b, int c) { return a + b + c; }
}通过这些核心特征,C#提供了强大的面向对象编程能力,使得开发者能够创建模块化、可重用和可维护的代码。