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

c#继承

作者:╭ァ你不懂的悲殇   发布日期:2026-07-08   浏览:118

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

    // 构造函数
    public Animal(string name)
    {
        Name = name;
    }

    // 定义一个虚方法 MakeSound,子类可以重写该方法
    public virtual void MakeSound()
    {
        Console.WriteLine($"{Name} makes a sound.");
    }
}

// 定义一个继承自 Animal 的子类 Dog
public class Dog : Animal
{
    // 使用基类的构造函数初始化 Name 属性
    public Dog(string name) : base(name)
    {
    }

    // 重写基类的 MakeSound 方法
    public override void MakeSound()
    {
        Console.WriteLine($"{Name} barks.");
    }
}

// 定义一个继承自 Animal 的子类 Cat
public class Cat : Animal
{
    // 使用基类的构造函数初始化 Name 属性
    public Cat(string name) : base(name)
    {
    }

    // 重写基类的 MakeSound 方法
    public override void MakeSound()
    {
        Console.WriteLine($"{Name} meows.");
    }
}

// 测试代码
class Program
{
    static void Main(string[] args)
    {
        // 创建 Animal、Dog 和 Cat 对象
        Animal animal = new Animal("Generic Animal");
        Dog dog = new Dog("Buddy");
        Cat cat = new Cat("Whiskers");

        // 调用 MakeSound 方法
        animal.MakeSound(); // 输出: Generic Animal makes a sound.
        dog.MakeSound();    // 输出: Buddy barks.
        cat.MakeSound();    // 输出: Whiskers meows.
    }
}

解释说明

  1. 基类 Animal:

    • 定义了一个公共属性 Name 和一个构造函数来初始化这个属性。
    • 包含一个虚方法 MakeSound,允许子类重写该方法。
  2. 子类 DogCat:

    • 继承自 Animal 类,并使用基类的构造函数初始化 Name 属性。
    • 重写了 MakeSound 方法,以实现各自特有的行为(狗叫和猫叫)。
  3. 测试代码:

    • 创建了 AnimalDogCat 对象,并调用了各自的 MakeSound 方法,展示了多态性。

上一篇:c# mvc

下一篇: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 中文站