当前位置: 首页 > news >正文

中国制造网国际站网址济南房产网官网首页

中国制造网国际站网址,济南房产网官网首页,网站不能调用样式,花店网页设计素材在 C# 中,多态(Polymorphism)是面向对象编程的基本特性之一,它允许使用不同的对象和方法来执行同一操作。C# 中实现多态的方式主要是通过虚方法和抽象类。 虚方法是一种允许子类覆盖的方法,它的实现是在运行时动态确定…

在 C# 中,多态(Polymorphism)是面向对象编程的基本特性之一,它允许使用不同的对象和方法来执行同一操作。C# 中实现多态的方式主要是通过虚方法和抽象类。

虚方法是一种允许子类覆盖的方法,它的实现是在运行时动态确定的。C# 中,可以通过在方法前面加上 virtual 关键字来定义一个虚方法。子类可以使用 override 关键字来覆盖基类的虚方法,从而实现多态。下面是一个简单的例子:

public class Animal
{public virtual void MakeSound(){Console.WriteLine("The animal makes a sound.");}
}public class Dog : Animal
{public override void MakeSound(){Console.WriteLine("The dog barks.");}
}public class Cat : Animal
{public override void MakeSound(){Console.WriteLine("The cat meows.");}
}class Program
{static void Main(string[] args){Animal animal = new Animal();Animal dog = new Dog();Animal cat = new Cat();animal.MakeSound();dog.MakeSound();cat.MakeSound();}
}

输出结果为:

The animal makes a sound.
The dog barks.
The cat meows.

在这个例子中,Animal 类定义了一个虚方法 MakeSound(),而 Dog 和 Cat 类则分别覆盖了该方法。在 Main 函数中,我们创建了一个 Animal 对象和两个子类对象,并分别调用了它们的 MakeSound() 方法。由于 Dog 和 Cat 类覆盖了 MakeSound() 方法,所以它们的输出结果与基类的不同。

除了虚方法,抽象类也是实现多态的一种方式。抽象类是一种不能被实例化的类,它只能被用作其他类的基类。C# 中,可以通过在方法前面加上 abstract 关键字来定义一个抽象方法。子类必须实现抽象方法,否则子类也必须定义为抽象类。下面是一个简单的例子:

public abstract class Shape
{public abstract double GetArea();
}public class Square : Shape
{private double side;public Square(double s){side = s;}public override double GetArea(){return side * side;}
}public class Circle : Shape
{private double radius;public Circle(double r){radius = r;}public override double GetArea(){return Math.PI * radius * radius;}
}class Program
{static void Main(string[] args){Shape[] shapes = new Shape[2];shapes[0] = new Square(5);shapes[1] = new Circle(3);foreach (Shape shape in shapes){Console.WriteLine("Area of {0}: {1}", shape.GetType().Name, shape.GetArea());}}
}

输出结果为:

Area of Square: 25
Area of Circle: 28.274333882308

当基类中声明的方法被子类重写时,子类的方法将被调用。这种方法调用的行为称为虚方法调用。虚方法调用通过运行时检查确定要调用的方法,这就是多态。

要实现多态和虚方法,需要遵循以下步骤:

  1. 在基类中声明虚方法:在基类中声明一个方法,并使用 virtual 关键字表示该方法是可重写的。例如:
    public class Animal {public virtual void MakeSound() {Console.WriteLine("The animal makes a sound");}
    }
  2. 在子类中重写虚方法:在子类中使用 override 关键字重写基类中声明的虚方法。例如:
    public class Dog : Animal {public override void MakeSound() {Console.WriteLine("The dog barks");}
    }
    
  3. 创建对象并调用方法:创建一个子类的对象,并调用重写的虚方法。例如:
    Animal animal = new Dog();
    animal.MakeSound(); // 输出 "The dog barks"
    

    在这个例子中,我们创建了一个 Dog 类的对象,并将其赋值给了一个 Animal 类型的变量。然后调用 MakeSound() 方法,输出 "The dog barks"。因为 MakeSound() 方法被声明为虚方法并且在子类中重写了,所以在运行时会调用子类中的方法,而不是基类中的方法。

    这就是在 C# 中实现多态和使用虚方法的基本方法。

http://www.yayakq.cn/news/365172/

相关文章:

  • 个人音乐网站免费建设吉林市建设厅网站
  • 做网站订阅号该网站暂时无法访问404
  • 网站关键词排名怎么提升百度seo排名软件
  • 找人做网站毕业设计不用写代码做网站软件
  • 网页设计页面大小东莞百度seo推广公司
  • 淄博免费网站建设泉州网络seo
  • 合伙开公司建设网站被骗短视频创作平台
  • 学校网站建设软件推荐电子商务网站建设过程范文
  • 免费的海报设计网站多用户智能网站建设源码
  • c语言软件开和网站开发区别六安做网站公司
  • 什么物流公司网站建设网站名称是什么
  • 网站开发软件搭配湖州童装网站
  • 网站没备案怎么做广告联盟菜鸟教程网站是怎么做的
  • WordPress完美建站专业的移动客户端网站建设
  • dede 网站源码江西赣州市
  • 成都网站建设qghl与狗狗做网站
  • 怎么利用wordpress做网站网站系统开发方式
  • 徐州网站建设 网站推广网页设计与网站开发pdf
  • 成都网站建设上云目前h5页面的制作工具有哪些
  • 前端网站论文wordpress禁止转载插件
  • 宜昌建设网站wordpress更改主题
  • 成都航空公司官方网站主要的网站开发技术路线
  • 做网站的市场风险分析及对策天猫网上购物商城
  • 广西网站设计运营公司仿win8网站模板
  • 无锡市建设银行总行网站php 网站开发平台
  • 公司建网站的详细步骤wordpress 注册页
  • 做网站各个流程网站建设一般都需要什么资质
  • 做网站被网监叫去很多次学动漫设计需要什么条件
  • 常州制作网站价格建网站都要什么费用
  • 无极app下载最新版seo网络推广是什么意思