欢迎光临
我们一直在努力

建站超值云服务器,限时71元/月

using system;

namespace testform
{
    /// <summary>
    /// event source
    /// </summary>
    public class bird
    {
        public bird()
        {
        }
        public void flying()
        {
            this.onbirdevent(birdstatus.flying);
        }
        public void dead()
        {
            this.onbirdevent(birdstatus.dead);

        }
        public void sleep()
        {
            this.onbirdevent(birdstatus.sleeping);
        }
        private void onbirdevent(birdstatus s)
        {
            if(this.birdevent!=null)
            {
                this.birdevent(this,new birdeventargs(s));
            }
        }
        public event birdeventhandler birdevent;
    }
    public delegate void birdeventhandler(object sender,birdeventargs e);
    public class birdeventargs:eventargs
    {
        private birdstatus _s;
        
        public birdeventargs(birdstatus s)
        {
            this._s=s;
        
        }
        
        public birdstatus status
        {
            get
            {
                return this._s;
            }
        }
    
    }
    public enum birdstatus
    {
        flying,
        sleeping,
        dead
    }
    /// <summary>
    /// event target
    /// </summary>
    public class hunter
    {
        private bird bird;
        public hunter()
        {
            bird=new bird();
            bird.birdevent+=new birdeventhandler(this.onwatch);
        }
        private void onwatch(object sender,birdeventargs e)
        {
            switch(e.status)
            {
                case birdstatus.flying:
                    this.sleep();
                    break;
                case birdstatus.dead:
                    this.firebird();
                    break;
                case birdstatus.sleeping:
                    this.killbird();
                    break;
            }
        }
        private void killbird()
        {
            …
    
        }
        private void firebird()
        {
            …
        }
        private void sleep()
        {
            …
        }
    }
}

赞(0)
版权申明:本站文章部分自网络,如有侵权,请联系:west999com@outlook.com 特别注意:本站所有转载文章言论不代表本站观点! 本站所提供的图片等素材,版权归原作者所有,如需使用,请与原作者联系。未经允许不得转载:IDC资讯中心 »
分享到: 更多 (0)

相关推荐

  • 暂无文章