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();
}
运行结果:
大家是不是对<对象交互>有一定的了解了呢;
C#简单的对象交互的更多相关文章
- Power BI 可视化交互/视觉对象交互
xx Power BI的官方文档特别好,但是具体到自己使用的时候,有些知识点,可能看完文档忘了,导致有些功能做不出来...网络上资料还比较匮乏... 自己没事还是多总结下吧... 比如: 文档上写的很 ...
- javascript自定义简单map对象功能
这里介绍一种js创建简单map对象的方法: function Map() { //创建object对象, 并给object对象添加key和value属性 var obj1=new Object(); ...
- 如何使用AEditor制作一个简单的H5交互页demo
转载自:http://www.alloyteam.com/2015/06/h5-jiao-hu-ye-bian-ji-qi-aeditor-jie-shao/ 本教程演示如何使用AEditor制作一个 ...
- 在C#中实现简单的对象池
当我们频繁创建删除大量对象的时候,对象的创建删除所造成的开销就不容小觑了.为了提高性能,我们往往需要实现一个对象池作为Cache:使用对象时,它从池中提取.用完对象时,它放回池中.从而减少创建对象的开 ...
- Java网络与多线程系列之1:实现一个简单的对象池
前言 为什么要从对象池开始呢,先从一个网络IO操作的demo说起 比如下面这段代码,显而易见已经在代码中使用了一个固定大小的线程池,所以现在的重点在实现Runnble接口的匿名对象上,这个对象每次创建 ...
- Java进阶学习(2)之对象交互(上)
对象交互 对象交互 对象的识别 时钟小程序 把现实世界用对象去建模,去分解问题规模,最终抽象成对象和对象的模型 例如11:03的小程序,可以抽象成一个显示类,一个类生成两个对象去表示时钟 packag ...
- 利用Roslyn构建一个简单的C#交互脚本引擎
(此文章同时发表在本人微信公众号"dotNET每日精华文章",欢迎右边二维码来关注.) 微软的下一代编译器技术Roslyn是一个里程碑的技术,可以给.NET平台带来无限想象空间.比 ...
- nodejs初探(三)实现一个简单的socket交互
看一下nodejs中通过socket和客户端交互的最简单例子 // Sever --> Client 的单向通讯 var net = require('net'); var chatServe ...
- Socket简单实现数据交互及上传
声明:本文为原创,如需转载请说明出处:http://www.cnblogs.com/gudu1/p/7669175.html 首先为什么要写这个呢?因为在几个月之前我还使用Socket做一个小项目,而 ...
随机推荐
- 结合ABP源码实现邮件发送功能
1. 前言 2. 实现过程 1. 代码图(重) 2.具体实现 2.1 定义AppSettingNames及AppSettingProvider 2.2 EmailSenderConfiguration ...
- iOS 触摸事件与UIResponder(内容根据iOS编程编写)
触摸事件 因为 UIView 是 UIResponder 的子类,所以覆盖以下四个方法就可以处理四种不同的触摸事件: 1. 一根手指或多根手指触摸屏幕 - (void)touchesBegan:(N ...
- 【转】SQL Server -- 已成功与服务器建立连接,但是在登录过程中发生错误
SQL Server -- 已成功与服务器建立连接,但是在登录过程中发生错误 最近在VS2013上连接远程数据库时,突然连接不上,在跑MSTest下跑的时候,QTAgent32 crash.换成IIS ...
- php mail 函数发送邮件
当然你可以通过php ,在自己的站点制作一个反馈表单, 我这次的需求是用email 的形式发送数据报表,结构比较简单 // 收件人地址(此处只可以写一个地址,写多个地址,只有最后一个地址生效) $to ...
- Android 手机卫士7--黑名单拦截
1,黑名单数据库创建 三个字段(_id 自增长字段 phone 黑名单号码 mode 拦截类型) 创建表的sql语句 create table blacknumber (_id integer pri ...
- 子div设置浮动无法把父div撑开。
<div class="mainBox"> <div class="leftBox"></div> <div clas ...
- 《分布式事务解决之道》沙龙ppt共享
大型分布式系统往往由很多“微服务”组成,而不同的微服务往往又连接着不同的数据库,在看似常用的功能背后,可能又需要横跨不同的“微服务”和“数据库”才能实现.那么如何才能保证系统事务的一致性呢?这也同时是 ...
- 如何:加载分页结果(WCF 数据服务)
WCF 数据服务 允许数据服务限制单个响应源中返回的实体数.在此情况下,源中的最后一项包含指向下一页数据的链接.通过调用执行 DataServiceQuery 时返回的 QueryOperationR ...
- java静态修饰符static的使用
class Person { private String name; private int age; /* * 假设每个Person对象的国籍都一样, * 那么每次调用都要赋值就会不合理. * 使 ...
- Css3新特性应用之视觉效果
一.单侧阴影 box-shadow属性的应用,格式:h-shadow v-shadow blur spread color inset属性取值介绍 h-sahdow:水平阴影的位置,允许负值 v-sh ...