15.多态性
多态就是父类定义的抽象方法,在子类对其进行实现之后,将子类赋值给父类,在父类中,通过调用抽象方法来来实现子类的具体功能。
下路是与抽象方法类似的虚方法。
namespace ConsoleApplication15
{
class Program
{
public static void fun( Player p )
{
p.Train();
}
static void Main(string[] args)
{
Player p = new Player();
FootballPlayer f = new FootballPlayer();
Swimplay s= new Swimplay();
Spriter sp = new Spriter();
p.Train();
f.Train();
s.Train();
sp.Train();
fun( s );
fun( f );
Console.ReadKey();
}
}
public class Player
{
public virtual void Train()
{
Console.WriteLine( "训练!" );
}
}
public class Swimplay : Player
{
public override void Train()
{
Console.WriteLine( "游泳运动员!" );
}
}
public class FootballPlayer : Player
{
public override void Train()
{
Console.WriteLine( "足球运动员!" );
}
}
public class Spriter : Player
{
public override void Train()
{
Console.WriteLine( "短跑运动员!" );
}
}
}
都实现了类的多态性。
还有一个接口(是一个类,与抽象类类似)(interface),也是类似的。不同的是,它的成员都要是抽象的,一个类可以继承多个接口类。
本文出自 “郭俊的博客” 博客,转载请与作者联系!
原文地址:http://10093949.blog.51cto.com/10083949/1631349