c#接口的用法

namespace 抽象类借口
{
    class Program
    {
        class Chinese:Walkable
        {

            public void Walk()
            {
                Console.WriteLine("pia pia");
            }
        }

        class Dog:Walkable
        {
            public void Walk()
            {
                Console.WriteLine("Dog走路");
            }
        }

        class Bird : Flyable,Walkable//可以继承多个接口
        {
            public void Fly()
            {
                Console.WriteLine("小鸟飞");
            }

            public void Walk()
            {
                Console.WriteLine("Bird走路  ");
            }
        }

        interface Flyable//接口定义 定义一个飞的行为 不能定义实现
        {
            void Fly();//在接口里定义方法不需要 修饰符
      
        }

        interface Walkable
        {
            void Walk();
        }
      /* public abstract class Person//抽象类person 只要有一个方法标志为abstract,类就要标志为abstract
        {
            public abstract void SayHello();//抽象类方法
        }
       public class Chinese : Person
       {
           public override void SayHello()
           {
               Console.WriteLine("我是中国人");
           }
       }*/
        static void Main(string[] args)
        {
            Bird b = new Bird();
            b.Fly();
            Walkable w = new Dog();
            w.Walk();
            w = new Chinese();
            w.Walk();

            Dog dog=(Dog)w; //Dog dog =w as Dog;
            
            /*Person p = new Person();//抽象类是不能被new出来的
            Chinese c1 = new Chinese();
            c1.SayHello();*/
            Console.ReadKey();
        }
    }
}
C#里的接口 可以多个继承 与类 的继承有所区别。
  • 2
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值