c#什么是多态性,用多态的作用是什么

如题所述

第1个回答  2016-12-25
多态的含义就是C#中允许多个方法的方法名相同,只要它们的方法签名不同就可以.
这里有两个概念,方法名是方法的一部分,例如一个方法:
public static void hello(int a,int b)
在这个方法中,hello被称为方法名.
方法签名指的是方法名和方法参数列表的构造,同样对于上面的方法,它的方法签名是:
hello(int a,int b)
多态性的作用是极大的,您可能已经知道,下面的代码是可以通过编译的:
using System;
namespace Test
{
public class MainClass
{
public static void Main()
{
Console.WriteLine("hahaha");
Console.WriteLine(5);
Console.WriteLine(true);
}
}本回答被网友采纳

c#什么是多态性,用多态的作用是什么?请举例说明,谢谢
多态性的作用是极大的,您可能已经知道,下面的代码是可以通过编译的:using System;namespace Test { public class MainClass { public static void Main(){ Console.WriteLine("hahaha");Console.WriteLine(5);Console.WriteLine(true);} } } 这段代码的输出是:hahaha 5 true C#是一种强类型语言...

怎么来理解c#多态性,举个简单的例子吧
多态的定义:同一消息可以根据发送对象的不同而采用多种不同的行为方式。多态的作用:消除类型之间的耦合关系。实例:public abstract class Operation{ public abstract decimal GetResult(decimal va, decimal vb);}public class OperationAdd : Operation{ public override decimal GetResult(decimal v...

c#什么是多态,委托啊
多态就是:允许将子类类型的指针赋值给父类类型的指针。也就是同一操作作用于不同的对象,可以有不同的解释,产生不同的执行结果。理解多态之前首先要对面向对象的里氏替换原则和开放封闭原则有所了解。里氏替换原则(Liskov Substitution Principle):派生类(子类)对象能够替换其基类(超类)对象被使用。...

C#中sealed关键字、多态、base关键字
在C#编程中,了解密封类(sealed)、多态(polymorphism)和基类(base)关键字的功能对于实现高效、灵活的代码结构至关重要。首先,`sealed`关键字用于标记类不允许被继承,这样的类被称为密封类。这意味着不能从密封类派生出子类,通常密封类用于封装不可更改的实现。同时,`sealed`还可以用于方法,表示该方法...

C#中 密封类、抽象类、接口、继承性、多态性、虚方法 的定义,比较和区 ...
多态是指一个对象多种形态,比如父类的一个方法多个子类会有不同的实现,没有继承就没有多态.同样是oop三特性之一.虚方法:virtual定义虚方法,override来重写虚方法 虚方法和重写类似.虚方法是指一父类的一个方法子类的不同执行.也是建立在继承关系下的.不过虚方法与抽象方法的本质区别是,虚方法有方法...

什么是多态和重载?
多态(Polymorphisn),按字面的意思就是“多种形状”。多态性是允许你将父对象设置成为和一个或更多的他的子对象相等的技术,赋值之后,父对象就可以根据当前赋值给它的子对象的特性以不同的方式运作。简单的说,就是所有可以放父类对象的地方都可以用它的子类对象来代替,并且有着子类对象的特性,如...

在C#中,类的多态与抽象类区别在哪里
类的多态主要表现在类的继承。通过继承,一个类可以用作多种类型:可以用作它自己的类型、任何基类型,或者在实现接口时用作任何接口类型。这称为多态性。C# 中的每种类型都是多态的。类型可用作它们自己的类型或用作 Object 实例,因为任何类型都自动将 Object 当作基类型。多态性不仅对派生类很重要...

C#中的构造函数、方法重载以及继承与多态详细讲解
刚开始学是很费劲,简单理解:构造函数说白了就是新建类的时候新起一个名字与类名一致的函数,可以有无参数、一或多参数。新建类时候必写,以防万一。方法重载就是同一个功能函可能无参数、一或多参数,一般是用在写功能函数的时候。多态简单的说,可以分为重载和重写,就是同一个方法在不同的类中...

举例说明何为世代交替?何为多态?
多态性的作用是极大的,您可能已经知道,下面的代码是可以通过编译的:using System;namespace Test { public class MainClass { public static void Main(){ Console.WriteLine("hahaha");Console.WriteLine(5);Console.WriteLine(true);} } } 这段代码的输出是:hahaha 5 true C#是一种强类型语言...

C#、C++、J#这三门语言的区别是什么
2、C++是半面相对象的,引入了类的封装性、继承性、多态性大大简化程序编写,提到了代码重用率。c和c++的关系:C++既面向过程又面向对象,而且她继承了C语言的所有优点,又对C语言功能做了很多扩充,可以认为C++就是C的增强版。3、C#是完全面向对象的语言,简单易学,开发效率非常高。C#不支持多重继承...

相似回答