技术文摘
C#继承与多态的实例演示实现
2025-01-02 02:49:33 小编
C#继承与多态的实例演示实现
在C#编程中,继承和多态是面向对象编程的两个重要概念,它们能够提高代码的可维护性和可扩展性。下面通过一个具体的实例来演示C#中继承与多态的实现。
我们创建一个基类Animal,它包含一个虚方法MakeSound:
class Animal
{
public virtual void MakeSound()
{
Console.WriteLine("动物发出声音");
}
}
接下来,创建两个派生类Dog和Cat,它们都继承自Animal类,并分别重写MakeSound方法:
class Dog : Animal
{
public override void MakeSound()
{
Console.WriteLine("汪汪汪");
}
}
class Cat : Animal
{
public override void MakeSound()
{
Console.WriteLine("喵喵喵");
}
}
在上述代码中,Dog和Cat类通过override关键字重写了基类Animal的MakeSound方法,实现了各自特定的行为。
现在,我们可以在Main方法中创建Animal、Dog和Cat类的实例,并调用MakeSound方法来观察多态的效果:
class Program
{
static void Main()
{
Animal animal = new Animal();
animal.MakeSound();
Animal dog = new Dog();
dog.MakeSound();
Animal cat = new Cat();
cat.MakeSound();
}
}
当运行这段代码时,会根据对象的实际类型来调用相应的MakeSound方法。对于Animal类的实例,会输出“动物发出声音”;对于Dog类的实例,会输出“汪汪汪”;对于Cat类的实例,会输出“喵喵喵”。
通过继承,Dog和Cat类继承了Animal类的成员,并且可以在派生类中添加自己的特定成员。而多态则允许我们使用基类的引用来引用派生类的对象,根据对象的实际类型来调用合适的方法。
在实际开发中,继承和多态可以用于创建具有层次结构的类体系,使得代码更加模块化和可扩展。例如,在游戏开发中,可以创建一个基类GameObject,然后派生出各种具体的游戏对象类,每个派生类可以重写基类的方法来实现自己的行为。
C#中的继承和多态是强大的编程概念,能够帮助我们编写更加灵活和可维护的代码。
- HTML图片链接是HTTP打开却变HTTPS原因
- Sass 中优雅使用函数:支持传参且避免重复
- 高德地图添加 marker 标记后无法加载:加载异常原因探究
- Vue项目中使用ClickHouse JS实现增删改查的方法
- 不使用爬虫和接口,用JavaScript获取淘宝页面SKU价格的方法
- 绝对定位元素相对内容框的偏移方法
- HTTP POST请求获取视频文件流后转化为视频文件并下载的方法
- 高德地图原生开发地图无法加载,或与Mock.js有关
- CSS类名命名中串行命名与小驼峰命名的选择问题
- 侧边栏展开收起时如何避免页面内容超前伸
- 谷歌搜索框自动补齐功能的实现原理
- CSS 中 height、max-height、min-height 优先级的确定方法
- 怎样打造网页与控制台的不同表现
- 怎样借助 Performance 面板找出阻塞页面渲染的任务
- Vue 文件无法从 HTML 文件返回的原因