c#多态的重要实现-接口


1.接口中不能有属性(接口不能保存数据)和访问修饰符(默认是public), 接口中多只定义方法,并且不能有任何实现(与抽象类中的抽象方法类似)
2.接口和抽象类类似,不能被实例化
3.所有实现接口的类都可以装在接口定义的变量中
4.接口表示一种能力, 只要一个类继承了这个接口,就说明这个类具体接口定义的所有的能力(接口中定义的方法必须全部实现)
5.c#中类是单根继承, 一个类只能有一个父类,但可以继承实现很多接口
6. 一个接口可以继承多个接口(接口与类的重要区别)
7.如果几个对象都具有共同的一种能力,但除此之外,又实在找不出其它的相同点,可 以把表示这种能力的接口抽象出来,让不同的类去继承这个接口


接口使用的实例程序:
class Program

    {

        static void Main(string[] args)

       {




           IflyAble fei = new Helicopter();//new People(); //只要具有接口定义能力的类都可以用接口接收

           fei.fly();

           Console.ReadKey();

        }

    }




    public interface IflyAble

    {

        void fly();

    }




    public interface Ispeakable

    {

        void speak();

    }




    public interface IspeakAndFlyable : IflyAble, Ispeakable //接口可以继承多个接口

    {




    }




    public class People : Object

    {




        public void fly()

        {

            Console.WriteLine("我是会飞的人");

        }

    }




    public class Yingwu : IspeakAndFlyable //继承这个接口表明此类具有会说的能力

    {

   

        public void speak()

        {

            Console.WriteLine("我是鹦鹉,我会说话");

        }




        public void fly()

        {

            Console.WriteLine("我是鹦鹉,我会飞");

        }

    }




    public class Helicopter : IflyAble //继承这个接口表名此类具有会飞的能力

    {

        public void fly()

        {

            Console.WriteLine("我是会飞的直升飞机");

        }

    }







 
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值