实现多态的方法

多态:让一个对象能够表现出多种的状态(类型)

实现多态的3中方法:

1.虚方法;2.抽象类;3.接口

1.虚方法:关键字:virtual,将父类的方法标记为虚方法;

2.抽象类:抽象类和抽象方法由abstract修饰;

    abstract使用注意:

---a.抽象方法没有方法体(打括号里面的)

---b.抽象成员只能存在于抽象类中(方法和属性)

---c.抽象类可以有非抽象成员

---d.抽象类的派生类(子类)必须实现抽象方法体

---e.抽象类只能用作基类(父类),无法实例化

3.接口:关键字interface;接口中可以有属性,方法(未实现);

---a.接口的名称通常以“I”开头;如:IList

---b.如果一个类继承了类又实现了接口,那么类必须写在前面。

       一个类只能继承一个父类,但可以实现多个接口。

---c.接口中只能有方法;

---d.接口中的成员不能有访问修饰符,默认public;

---e.接口中的成员不能有任何实现,就像抽象方法一样;

---f.接口不能被实例化;

接口和类有什么异同:

不同点:1.不能直接实例化接口;

               2.接口不包含方法的实现;

               3.接口可以多继承,类只能单继承;

相同点:1.接口,类和结构都可以从多个接口继承;

               2.接口类似于抽象基类:继承接口的任何非抽象类型都必须实现接口的所有成员;

               3.接口和类都可以包含事件,索引器,方法和属性。  

原文地址:https://www.cnblogs.com/sky-wolf/p/7755518.html