C#简单的对象交互

在对象的世界里,一切皆为对象;对象与对象相互独立,互不干涉,但在一定外力的作用下对象开始共同努力

对象交互的实例

电视机大家都有吧,依照万物皆对象的思维模式来看,电视机可以是一个类,然后电视机有一些基本的方法如:

电视机类 TV

1.打开电视的方法open();

2.关闭电视的方法Close();

3.切换电视频道的方法change();

 class TV
    {
        //电视的状态
        bool flag;
        //打开电视的方法
        public void open()
        {
            if (flag)
            {
                //如果电视为打开状态就不能再次打开
            }
            else
            {
                Console.WriteLine("电视已经打开");
                flag = true;
            }
        }
        //关闭电视的方法
        public void Close()
        {
            if (flag)
            {
                Console.WriteLine("电视已经关闭");
                flag = false;
            }
            else
            {
                //如果电视为关闭状态就不能再次关闭
               
            }
        }
        //切换频道的方法
        public void change(string name)
        {
            if (flag)
            {
                Console.WriteLine("电视一切换频道到"+name);
            }
            else
            {
                //如果电视为关闭状态就不能换台

            }
        }
    }

 

大家想,手动的去开关电视是不是特别的麻烦;然后就出现了电视遥控器:

遥控器类 RC

1.打开电视的方法open();

2.关闭电视的方法Close();

3.切换电视频道的方法change();

 class RC
    {
        //打开按钮
        public void open()
        {

        }
        //关闭按钮
        public void Close()
        {

        }
        //换台按钮
        public void change()
        {

        }
    }

我们怎么才能做到,按遥控器的按钮就能对电视进行对应的操作了?是不是把电视机的方法绑定到遥控器上就可以了!

代码如下:

 class RC
    {
        //声明一个TV类的对象,接受要遥控的电视对象
        TV tv;
        //将电视的对象传入遥控器;就是万能遥控绑定电视机的过程
        public void binding(TV tv)
        {
            this.tv = tv;
        }
        //打开按钮
        public void open()
        {
            tv.open();
        }
        //关闭按钮
        public void Close()
        {
            tv.Close();
        }
        //换台按钮
        public void change( string name)
        {
            tv.change(name);
        }
    }

然后就可以用遥控器遥控电视了!!

static void Main(string[] args)
        {
            //买一个电视
            TV tv = new TV();
            //拿出遥控
            RC rc = new RC();
            //将遥控器绑定到电视上
            rc.binding(tv);
            //打开电视
            rc.open();
            //换个台
            rc.change("CCTV");
            //关闭电视
            rc.Close();

            Console.ReadLine();
        }

运行结果:

大家是不是对<对象交互>有一定的了解了呢;

posted @ 2016-08-27 17:00  大头杀马特  阅读(1454)  评论(0编辑  收藏  举报