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

对象交互的实例

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

电视机类 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();
}

运行结果:

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

C#简单的对象交互的更多相关文章

  1. Power BI 可视化交互/视觉对象交互

    xx Power BI的官方文档特别好,但是具体到自己使用的时候,有些知识点,可能看完文档忘了,导致有些功能做不出来...网络上资料还比较匮乏... 自己没事还是多总结下吧... 比如: 文档上写的很 ...

  2. javascript自定义简单map对象功能

    这里介绍一种js创建简单map对象的方法: function Map() { //创建object对象, 并给object对象添加key和value属性 var obj1=new Object(); ...

  3. 如何使用AEditor制作一个简单的H5交互页demo

    转载自:http://www.alloyteam.com/2015/06/h5-jiao-hu-ye-bian-ji-qi-aeditor-jie-shao/ 本教程演示如何使用AEditor制作一个 ...

  4. 在C#中实现简单的对象池

    当我们频繁创建删除大量对象的时候,对象的创建删除所造成的开销就不容小觑了.为了提高性能,我们往往需要实现一个对象池作为Cache:使用对象时,它从池中提取.用完对象时,它放回池中.从而减少创建对象的开 ...

  5. Java网络与多线程系列之1:实现一个简单的对象池

    前言 为什么要从对象池开始呢,先从一个网络IO操作的demo说起 比如下面这段代码,显而易见已经在代码中使用了一个固定大小的线程池,所以现在的重点在实现Runnble接口的匿名对象上,这个对象每次创建 ...

  6. Java进阶学习(2)之对象交互(上)

    对象交互 对象交互 对象的识别 时钟小程序 把现实世界用对象去建模,去分解问题规模,最终抽象成对象和对象的模型 例如11:03的小程序,可以抽象成一个显示类,一个类生成两个对象去表示时钟 packag ...

  7. 利用Roslyn构建一个简单的C#交互脚本引擎

    (此文章同时发表在本人微信公众号"dotNET每日精华文章",欢迎右边二维码来关注.) 微软的下一代编译器技术Roslyn是一个里程碑的技术,可以给.NET平台带来无限想象空间.比 ...

  8. nodejs初探(三)实现一个简单的socket交互

    看一下nodejs中通过socket和客户端交互的最简单例子 //  Sever --> Client 的单向通讯 var net = require('net'); var chatServe ...

  9. Socket简单实现数据交互及上传

    声明:本文为原创,如需转载请说明出处:http://www.cnblogs.com/gudu1/p/7669175.html 首先为什么要写这个呢?因为在几个月之前我还使用Socket做一个小项目,而 ...

随机推荐

  1. 填坑系列:通过ESXi来配置IPMI

    近日西安的天气很不错,可是看到从其他地方迁移来的主机在新环境下无法远程调试怪郁闷的,这就需要填坑,要不就会给后来者挖更大的坑. 今天遇到的坑是在IPMI的网络设置里面启用了VLAN标签之后,在新环境下 ...

  2. 【NLP】揭秘马尔可夫模型神秘面纱系列文章(四)

    维特比算法解决隐马尔可夫模型解码问题(中文句法标注) 作者:白宁超 2016年7月12日14:08:28 摘要:最早接触马尔可夫模型的定义源于吴军先生<数学之美>一书,起初觉得深奥难懂且无 ...

  3. 读书笔记--SQL必知必会05--高级数据过滤

    5.1 组合使用WHERE子句 操作符(operator)也称为逻辑操作符(logical operator),用来联结或改变WHERE子句中的过滤条件. 5.1.1 AND操作符 在WHERE子句中 ...

  4. 你真的会玩SQL吗?EXISTS和IN之间的区别

    你真的会玩SQL吗?系列目录 你真的会玩SQL吗?之逻辑查询处理阶段 你真的会玩SQL吗?和平大使 内连接.外连接 你真的会玩SQL吗?三范式.数据完整性 你真的会玩SQL吗?查询指定节点及其所有父节 ...

  5. .net程序部署(setupFactory)

    vs 自带的安装打包 实在弱爆了,点都不好用.一直一直在寻觅一个靠谱点的打包工具.在网上寻寻觅觅 寻寻觅觅 功夫不负有心人,终于让我找到了.setupFactory  我用的是 8.0版本 . 首先要 ...

  6. Rafy 框架-发布网页版用户手册

    前段时间把 Rafy 的用户手册由 CHM 格式转换为了网页格式,而且发布到了 github.io 上,即方便文档的实时更新,也方便大家查看. Rafy 用户手册网页版地址: http://zgynh ...

  7. VC程序获取管理员权限

    一: 编译程序的时候设置一下 在项目属性--连接器--清单文件--UAC执行级别改为requireAdministrator 二: void GainAdminPrivileges(CString s ...

  8. Java 单例模式详解

    概念: java中单例模式是一种常见的设计模式,单例模式分三种:懒汉式单例.饿汉式单例.登记式单例三种. 单例模式有一下特点: 1.单例类只能有一个实例. 2.单例类必须自己自己创建自己的唯一实例. ...

  9. 【挖财工作笔记】idea使用指南

    一 安装破解 破解选择服务器,然后选择地址:http://www.iteblog.com/idea/key.php  http://idea.iteblog.com/key.php  http://i ...

  10. 来玩Play框架02 响应

    作者:Vamei 出处:http://www.cnblogs.com/vamei 欢迎转载,也请保留这段声明.谢谢! 我上一章总结了Play框架的基本使用.这一章里,我将修改和增加响应. HTTP协议 ...