コード例 #1
0
ファイル: Program.cs プロジェクト: shouzhuo1/CSharp
        static void Main(string[] args)
        {
            Duck d = new Duck();

            //Duck对象d可以使用3种方法:
            //1.自身定义的;
            //2.父类定义的
            //3.接口定义的
            d.Fly();
            d.Cook();
            d.Swim();
            //将子类(Duck)对象赋给基类变量
            Bird b = d;

            //现在只能使用基类定义的Fly()方法
            b.Fly();
            //将Duck对象赋给ISwin接口变量
            ISwim s = d;

            //现在只能使用接口定义的Swim()方法
            s.Swim();
            //将Duck对象赋给另一个实现的接口IFood接口变量
            IFood f = d;

            //现在只能使用接口定义的Cook()方法
            f.Cook();
            Console.ReadKey();
        }
コード例 #2
0
ファイル: Program.cs プロジェクト: shouzhuo1/CSharpIntro
        static void Main(string[] args)
        {
            Duck duck = new Duck();

            duck.Fly();
            duck.Swim();
            duck.Cook();
            Bird bird = duck;

            bird.Fly();
            //将Duck对象赋给ISwin接口变量
            ISwim s = duck;

            //只会游泳
            s.Swim();
            //将Duck对象赋给另一个实现的接口IFood接口变量
            IFood food = duck;

            //只会Cook
            food.Cook();
            Console.ReadKey();
        }