- 1、本文档共32页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
Lecture05对象互操作课案
事件驱动对象协同 最简化的面向对象开发过程 确定功能性需求与总体任务 设计合适的类,满足这些需求和任务 实体化类 通过外部触发的事件驱动对象操作 外部事件 点击界面上的一个按钮 从其他系统反馈的信息 学生通过SRS选课 一个Student对象 通过参数直接传一个对象 通过参数传学生ID号,通过ID号创建一个对象 一个DegreeProgram对象 合适的Course对象 一个Classroom对象 一个Transcript对象 图4-1 说明对象协同工作的示意图,实际工作更加复杂 学生选课 用户只要填几个参数,点击一个按钮,等一会就可以知道选课是否成功,但内部比较复杂,事件链条启动就会顺序或并行的执行,有点像打台球。 扩展:选课是一个典型的工作流程序,在.net中可以选用状态机编程来设计工作流引擎,自己设定工作流程及处理。 申明方法 对象的方法可以看作该对象能执行的服务 通过定义方法头(method header)可以确定需要做什么,完成服务需要什么信息,完成服务后返回什么结果 方法体(method body)定义具体如何执行 与函数的函数头、函数体含义一样 方法头 方法名称 可选的传入形式参数 方法的返回类型 bool RegisterForCourse(string courseID,int secNo) 传入参数的含义:课程编号和课时号 返回结果是bool型,表示是否成功 扩展:返回结果可以是一个对象,为通用可以是一个字符串,但是使用xml格式进行封装,可传递任何结果 XML 序列化简介 序列化是将对象转换成易于传输的形式的过程 反序列化在流中重新构建对象 使类可序列化的最简单方法是按以下方式使用 Serializable 属性对其进行标记。 为什么要使用序列化? 将对象状态保存到存储媒体,以便可以在以后阶段重新创建精确副本; 将对象按值从一个应用程序域发送至另一个应用程序域。 例如可以序列化对象,并使用 HTTP 通过 Internet 在客户端和服务器之间进行传输,用于在 ASP.NET 中保存会话状态。 方法体 在类设计时还要编写每个方法在被调用时如何动作的内部细节,这些内部编程细节被称作方法体 方法体中的逻辑定义了抽象模型的业务逻辑(business logic),也被称为业务规则(business rules)。 例如isHonorsStudent方法中,有一个业务规则用来判断一个学生是否是荣誉学生。 return 语句 return用来退出方法 对于void返回类型,return是可选的 对于非void返回类型,必须至少一个return语句,后面必须跟有一个表达式,该表达式的值类型与返回类型吻合 较好的编程习惯是一个方法体仅包含一个return语句,例如 bool isHonorsStudent () { bool result =false; if (gpa=3.5) result=true; …… return result; } “自文档化” 使用说明性的文字给方法和参数命名 最规范的方式还是写说明性的文档 方法调用和点符号 消息(message)是一个表达式,由对象引用变量名 + “.” + 方法调用构成 例如 Student x = new Student(); x.RegisterForCourse(“Math 101”,10); 理解为:调用“对象x的方法”,或“向对象x发送一条消息”; 参数值 vs 参数 参数(parameter):是一个本地变量,在方法头中声明,在方法体中使用; 参数值(argument):是一个具体的数值,在调用代码中使用,并对参数这个变量赋初值; 参数值是值,参数是变量,是不同的概念 调用方法上下文的对象 在面向对象语言中,对象被当作方法的调用上下文。 类的静态方法只能类来调用,类的非静态方法必须使用类的对象来进行调用 消息(方法调用)也可以作为一种表达式,方法执行后的返回值就是表达式的值 可以使用一个变量来捕获方法的返回值,也可以直接用于表达式中(p80~81) 方法签名 方法签名(method‘s signature):这个术语指方法头中可被调用代码所“发现”的方面:方法名,传入参数的名称、顺序、类型和数量,但不包含参数名和返回类型 非正式术语参数签名指方法签名的一个子集,应用于重载 在对象间传递消息 图4-2中消息的传递: c.Register(s); s.Successfullyompleted(c2) 返回true,表示s学生已完成先修课程c2 返回true,表示对象c通过学生的选修申请 通过点操作符存取attribute 用点操作符可以向对象传递消息(调用方法) 也可以使用点操作符存取对象的属性 x.attrib
您可能关注的文档
- LabVIEW俱乐部第二次培训课案.ppt
- 农村土地确权技术方案课件.docx
- labview2014数据采集(上)第6讲.ppt
- LanSecS数据库安全防护系统解决方案.doc
- Landscapestudiesandtourismresearch景观学与旅游学.pptx
- 农村及分散污水处理方式及运营管理模式的研究及应用.ppt
- Latex软件.pptx
- 农村安全生产培训教程.ppt
- 农村会计凭证.ppt
- 农村安全用电知识.ppt
- 吉安县公开招聘专职文明实践员笔试备考试题及答案解析.docx
- 2025重庆枫叶国际学校招聘教师笔试备考试题及答案解析.docx
- 游机队电玩自制联网教程-tplink.pdf
- 2025重庆新华出版集团招聘1人笔试模拟试题及答案解析.docx
- 2025宜宾高新丽雅城市产业发展有限公司公开招聘笔试模拟试题及答案解析.docx
- 2025云南保山市龙陵县勐糯镇人民政府招聘合同制专职消防员1人笔试模拟试题及答案解析.docx
- 11.1生活中常见的盐 九年级化学人教版下册.pptx
- 6.1法律保护下的婚姻 高二政治《法律与生活》课件(统编版选择性必修2)(新版).pptx
- 文昌市中小学教师校园招聘29人笔试模拟试题及答案解析.docx
- 10.1.5 常见的酸和碱(第5课时)课件-九年级化学人教版下册.pptx
文档评论(0)