Laravel  
laravel
文档
数据库
架构
入门
php技术
    
Laravelphp
laravel / php / java / vue / mysql / linux / python / javascript / html / css / c++ / c#

c# 继承

作者:潇洒一醉   发布日期:2026-06-20   浏览:126

// 定义一个基类 Animal
public class Animal
{
    // 基类的属性
    public string Name { get; set; }

    // 基类的方法
    public virtual void MakeSound()
    {
        Console.WriteLine("This animal makes a sound");
    }
}

// 定义一个派生类 Dog,继承自 Animal
public class Dog : Animal
{
    // 重写基类的方法
    public override void MakeSound()
    {
        Console.WriteLine("Dog barks");
    }

    // 派生类特有的方法
    public void Fetch()
    {
        Console.WriteLine("Dog fetches the ball");
    }
}

// 测试代码
public class Program
{
    public static void Main(string[] args)
    {
        // 创建基类对象
        Animal myAnimal = new Animal();
        myAnimal.Name = "Generic Animal";
        myAnimal.MakeSound();

        // 创建派生类对象
        Dog myDog = new Dog();
        myDog.Name = "Buddy";
        myDog.MakeSound();
        myDog.Fetch();

        // 多态性示例
        Animal myPolymorphicDog = new Dog();
        myPolymorphicDog.MakeSound(); // 调用的是 Dog 类中的 MakeSound 方法
    }
}

解释说明:

  1. 基类 Animal:定义了一个通用的动物类,包含一个属性 Name 和一个虚方法 MakeSound。虚方法可以被派生类重写。
  2. 派生类 Dog:继承自 Animal 类,重写了 MakeSound 方法,并添加了自己特有的方法 Fetch
  3. 测试代码:创建了 AnimalDog 对象,并展示了如何调用它们的方法。还展示了多态性的概念,即通过基类引用调用派生类的方法。

上一篇:c# 字符串拼接

下一篇:c# 单例

大家都在看

c# 二进制

c# 创建目录

c# socket服务端连接多个客户端

c# datatable group by

c# tcp client

c# type.gettype

c# sqlconnection

c# string.format 小数位数

c# invoke方法

.net和c#

Laravel PHP 深圳智简公司。版权所有©2023-2043 LaravelPHP 粤ICP备2021048745号-3

Laravel 中文站