现在的位置: 首页 > 综合 > 正文

C#接口使用

2013年03月26日 ⁄ 综合 ⁄ 共 4101字 ⁄ 字号 评论关闭

 定义一个接口,用于描述动物的生活习性,包含食性、捕食、分布区域、睡觉方式、群居方式等;接口里面包括属性和方法。

例如:

interface IHabit

{

    void CatchFood();

    string food{get;set;}

    ……

}

    然后定义猫、老虎、狮子、大象等几个动物类来实现该接口;

    最后定义一个调用类,来运行程序,查看接口的使用情况。

//本程序由王赟  计算机092编写 2011,11,7 编写,仅供交流
//做完C#作业,便把东西传了上来。

///wangyun 2011,11,07 23:34 at  Dormitory 3#1548 
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace S4_1
{
    interface IHabit
    {
        /// <summary>
        /// 扑食
        /// </summary>
        void CatchFood();
        /// <summary>
        /// 食性
        /// </summary>
        string Food { get; set; }
        /// <summary>
        /// 分布区域
        /// </summary>
        void AreaDistribution();
        /// <summary>
        /// 睡觉方式
        /// </summary>
        void SleepPattern();
        /// <summary>
        /// 群居方式
        /// </summary>
        void SocialPattern();
    }
    /// <summary>
    /// 猫
    /// </summary>
    class Cat : IHabit
    {
        private string food="Cat Food";
        public void CatchFood()
        {
            Console.WriteLine("From Cat.CatchFood");
        }
        public string Food
        {
            get
            {
                return food;
            }
            set
            {
                food = value;
            }
        }
        public void AreaDistribution()
        {
            Console.WriteLine("From Cat AreaDistribution");
        }
        public void SleepPattern()
        {
            Console.WriteLine("From Cat SleepPattern");
        }
        public void SocialPattern()
        {
            Console.WriteLine("From Cat SocialPattern");
        }
    }
    /// <summary>
    /// 老虎
    /// </summary>
    class Tiger : IHabit
    {
        private string food = "Tiger Food";
        public void CatchFood()
        {
            Console.WriteLine("From Tiger.CatchFood");
        }
        public string Food
        {
            get
            {
                return food;
            }
            set
            {
                food = value;
            }
        }
        public void AreaDistribution()
        {
            Console.WriteLine("From Tiger AreaDistribution");
        }
        public void SleepPattern()
        {
            Console.WriteLine("From Tiger SleepPattern");
        }
        public void SocialPattern()
        {
            Console.WriteLine("From Tiger SocialPattern");
        }
    }
    /// <summary>
    /// 狮子
    /// </summary>
    class Lion : IHabit
    {
        private string food = "Lion Food";
        public void CatchFood()
        {
            Console.WriteLine("From Lion.CatchFood");
        }
        public string Food
        {
            get
            {
                return food;
            }
            set
            {
                food = value;
            }
        }
        public void AreaDistribution()
        {
            Console.WriteLine("From Lion AreaDistribution");
        }
        public void SleepPattern()
        {
            Console.WriteLine("From Lion SleepPattern");
        }
        public void SocialPattern()
        {
            Console.WriteLine("From Lion SocialPattern");
        }
    }
    /// <summary>
    /// 大象,显式调用借口
    /// </summary>
    class Elephant : IHabit
    {
        private string food = "Elephant Food";
        void IHabit.CatchFood()
        {
            Console.WriteLine("From Elephant.CatchFood");
        }
       string IHabit.Food
        {
            get
            {
                return food;
            }
            set
            {
                food = value;
            }
        }
        void IHabit.AreaDistribution()
        {
            Console.WriteLine("From Elephant AreaDistribution");
        }
        void IHabit.SleepPattern()
        {
            Console.WriteLine("From Elephant SleepPattern");
        }
        void IHabit.SocialPattern()
        {
            Console.WriteLine("From Elephant SocialPattern");
        }
    }
    class Animal
    {
        static void Main(string[] args)
        {
            Cat cat = new Cat();
            Tiger tiger = new Tiger();
            Lion lion = new Lion();
            Elephant elephant = new Elephant();
            IHabit ielephant = (IHabit)elephant;
            cat.CatchFood();
            Console.WriteLine("Food:{0}", cat.Food);
            cat.AreaDistribution();
            cat.SleepPattern();
            cat.SocialPattern();
            Console.WriteLine();
            tiger.CatchFood();
            Console.WriteLine("Food:{0}", tiger.Food);
            tiger.AreaDistribution();
            tiger.SleepPattern();
            tiger.SocialPattern();
            Console.WriteLine();
            lion.CatchFood();
            Console.WriteLine("Food:{0}", lion.Food);
            lion.AreaDistribution();
            lion.SleepPattern();
            lion.SocialPattern();
            Console.WriteLine();
            ielephant.CatchFood();
            Console.WriteLine("Food:{0}", ielephant.Food);
            ielephant.AreaDistribution();
            ielephant.SleepPattern();
            ielephant.SocialPattern();
        }
    }
}

抱歉!评论已关闭.