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

c# override

作者:唯憾梦倾城   发布日期:2025-04-02   浏览:72

// 定义一个基类 Animal
public class Animal
{
    // 基类中的虚方法 MakeSound
    public virtual void MakeSound()
    {
        Console.WriteLine("Animal makes a sound");
    }
}

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

// 测试代码
public class Program
{
    public static void Main()
    {
        Animal myAnimal = new Animal();
        Animal myDog = new Dog();

        myAnimal.MakeSound(); // 输出: Animal makes a sound
        myDog.MakeSound();    // 输出: Dog barks
    }
}

解释说明:

  1. 基类 Animal:定义了一个虚方法 MakeSound,使用 virtual 关键字表示该方法可以被派生类重写。
  2. 派生类 Dog:继承自 Animal 类,并使用 override 关键字重写了 MakeSound 方法。这意味着当通过 Dog 类的对象调用 MakeSound 方法时,将执行派生类中定义的新实现。
  3. 测试代码:创建了两个对象,一个是 Animal 类型的对象,另一个是 Dog 类型但引用为 Animal 的对象。调用它们的 MakeSound 方法时,会根据实际对象类型调用相应的方法。

通过这种方式,override 关键字允许派生类提供特定于该类的行为,而不会影响其他派生类或基类的行为。

上一篇:c# treeview

下一篇:c#获取时间戳

大家都在看

c# 二进制

c# tcp client

c# type.gettype

c# sqlconnection

.net和c#

c#游戏开发

c#网络编程

c# rectangle

c# if else

c# rtsp

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

Laravel 中文站