C#如何实现继承 C#类的继承和多态性入门

畫卷琴夢
发布: 2025-11-06 21:33:02
原创
790人浏览过
继承使子类复用父类功能,多态通过virtual和override实现同一方法不同行为。示例中Dog继承Animal并重写MakeSound,Animal引用指向Dog实例时调用的是子类方法,体现多态性。C#支持单类继承但可实现多接口,构造函数需显式传递参数给基类,sealed类不可被继承。掌握这些特性有助于提升代码扩展性与维护性。

c#如何实现继承 c#类的继承和多态性入门

在C#中,继承多态性面向对象编程的三大核心特性中的两个(另一个是封装)。它们让代码更灵活、可复用,并支持扩展。下面带你快速掌握C#中类的继承与多态性的基本用法。

什么是继承?

继承允许一个类(子类)获取另一个类(父类)的字段、方法和属性。子类可以在不重复编写代码的前提下,复用并扩展父类的功能。

在C#中使用冒号 : 来表示继承。

示例:简单的继承结构

public class Animal
{
    public void Eat()
    {
        Console.WriteLine("动物在吃东西");
    }

    public virtual void MakeSound()
    {
        Console.WriteLine("动物发出声音");
    }
}

public class Dog : Animal
{
    public override void MakeSound()
    {
        Console.WriteLine("汪汪!");
    }

    public void Bark()
    {
        Console.WriteLine("狗在叫");
    }
}
登录后复制

上面代码中,Dog 类继承自 Animal 类,因此它拥有 Eat() 方法,也可以重写或新增自己的行为。

如何实现多态性?

多态性是指同一个方法调用可以根据对象的实际类型表现出不同的行为。它是通过虚方法(virtual)和重写(override)来实现的。

关键点:

C知道
C知道

CSDN推出的一款AI技术问答工具

C知道 45
查看详情 C知道
  • 父类中用 virtual 声明可被重写的方法
  • 子类中用 override 替换父类的实现
  • 可以用父类引用指向子类对象,运行时自动调用对应的方法

示例:多态调用

Animal myAnimal = new Dog();
myAnimal.Eat();        // 输出:动物在吃东西
myAnimal.MakeSound();  // 输出:汪汪!(调用的是 Dog 的重写方法)
登录后复制

尽管变量类型是 Animal,但实际对象是 Dog,所以 MakeSound() 调用的是子类的版本 —— 这就是多态。

常见规则和注意事项

  • C#只支持单类继承 —— 一个类只能直接继承一个父类
  • 可以实现多个接口(interface),弥补单继承限制
  • 构造函数不会被继承,但子类会自动调用父类的无参构造函数
  • 若父类没有无参构造函数,需在子类中用 : base(...) 显式调用
  • 标记为 sealed 的类不能被继承

带参数构造函数的继承示例:

public class Animal
{
    public string Name { get; set; }

    public Animal(string name)
    {
        Name = name;
    }
}

public class Cat : Animal
{
    public Cat(string name) : base(name) { }

    public override void MakeSound()
    {
        Console.WriteLine($"{Name} 喵喵叫");
    }
}
登录后复制

小结

继承帮助我们复用代码,建立类之间的层次关系;多态让我们能以统一的方式处理不同类型的对象,提升程序的扩展性和维护性。掌握 virtualoverride 和父类引用指向子类对象的用法,是理解C#面向对象编程的关键一步。

基本上就这些,动手写几个类试试,很快就能上手。

以上就是C#如何实现继承 C#类的继承和多态性入门的详细内容,更多请关注php中文网其它相关文章!

最佳 Windows 性能的顶级免费优化软件
最佳 Windows 性能的顶级免费优化软件

每个人都需要一台速度更快、更稳定的 PC。随着时间的推移,垃圾文件、旧注册表数据和不必要的后台进程会占用资源并降低性能。幸运的是,许多工具可以让 Windows 保持平稳运行。

下载
来源:php中文网
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
最新问题
开源免费商场系统广告
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新 English
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号