- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
类和对象(上) 类和对象(上) 类和对象 程序设计简史 面向对象的思想 类的定义 对象的创建和使用 final、static关键字、常量 程序设计简史 过程式程序设计 结构化程序设计 面向对象程序设计(OO) 面向方面程序设计(AOP) 对象1 对象就是我们周围的各种各样的事物。例如: 衣服、盘子、宠物、朋友、电脑等。 每个对象都有一些状态(属性)。例如: 衣服:{颜色,长度,面料…}。 猫:{名字,情绪,饥饿,}。 有些对象会作出一些行为。例如: 猫:{名字,情绪,疲劳,饥饿… 发怒,玩耍,吃食,睡觉…}。 对象的行为会改变对象的状态。例如: 玩耍 → 疲劳=True 睡觉 → 疲劳=False 吃食 → 饥饿=False 对象的状态会影响对象的行为。例如: if( 饥饿 == False) → 吃食 return failure 面向对象的程序设计与我们人类观察客观事物的模式相同:用类表示客观事物,用类中的变量表示事物的属性,用函数(方法)表示事物的行为,属性与行为相互作用。 抽象(分析与设计) 抽象:就是对事物的状态、行为进行概括、总结、描述。 软件开发过程可分为五个阶段:分析、设计、实现、测试、发布。抽象对应于软件工程的分析、设计阶段。 分析:就是确定我们开发的系统想要实现什么。在分析阶段可以定义一组操作者,以及系统必须完成的行为。此外,还要定义一组主对象,系统在主对象之间完成操作、行为、交互。行为的描述要足够详细。 设计:就是确定系统如何实现要达到的目标。在设计阶段,要生成操作者、行为、主对象的模型。 例如,我们可以对一个轮船公司的软件工程作出下面的抽象: 软件必须支持一个轮船公司。 轮船公司保持一队运输集装箱的交通工具。 在调出一个交通工具时,集装箱的重量是唯一的重要因素。 轮船公司有两种类型的交通工具:卡车和内河驳船。 集装箱用千克标重,计算交通工具的引擎功率时,需要用牛顿表示的交通工具的总重量。 图形用户接口用来跟踪向交通工具中装载的集装箱。 一些报表用来生成车/船队的记录。 凭借这些需求分析,我们可以作出高水平的设计: 系统中必须用对象表示公司、两种交通工具。 公司是多个交通工具对象的集合。 还应该包括报表、图形用户接口等对象。 类是对象的蓝图 如同绘图员可以绘制设备的蓝图,蓝图可以在制造实际设备时使用很多次。类是软件的蓝图,你可以用类,来实例化许许多多个别的对象。在类中定义了一套数据元素(属性)和一套行为(方法)。行为用来操作对象,以及完成相关对象之间的交互。属性和方法都叫做成员。例如交通工具对象必须保存两个属性:最大载重量和当前载重量;装载集装箱的方法要始终跟踪这两个属性。 面向对象的思想 面向对象的编程思想力图使对计算机语言中对事物的的描述与现实世界中该事物的本来面目尽可能的一致。 类(class)和对象(object)是面向对象方法的核心概念。类是对一类事物描述,是抽象的、概念上的定义;对象是实际存在的该类事物的每个个体,因而也称实例(instance)。 Everything is Object:万事万物皆对象。 类的定义 类(Class)是用来描述一个对象(Object): 类包括两方面的内容: 属性:用来描述对象的数据元素称为对象的属性(也称为数据/状态) 方法:对对象的属性进行的操作称为对象的方法(也称为行为/操作) 类的定义(例CarObject.java) 以一个“汽车”实体为例,来说明类的定义 汽车的属性: 出厂编号 总数 发动机类型 最高速度 当前状态 当前速度 油量 …… 汽车的基本操作: 启动 关闭 加速 减速 …… 识别类的简单规则: 名词—属性 动词—方法 类的定义(例CarObject.java) public class CarObject { private int engineType; private int currentSpeed ; …… public CarObject() { ……} public CarObject( int engineType, int bodyType, int topSpeed ) { ……} public void turnOn() { running = true; } public void accelerate() {……} private void speedUp( int amount ) {……} …… } 面向对象特性--封装性 封装性就是把对象的属性和服务结合成一个独立的相同单位,并尽可能隐蔽对象的内部细节,包含两个含义: ◇ 把对象的全部属性和全部服务结合在一起,形成一个不可分割的独立
您可能关注的文档
- 税务师协会底稿检查主要问题.ppt
- 税收征管26016.ppt
- 税收理论(思想)的发展和变迁(至建国).ppt
- 税法 城市维护建设税与教费附加.ppt
- 税费减免广搭平台 海口多项举措力促创业就业25209.ppt
- 税费减免广搭平台 海口多项举措力促创业就业25204.ppt
- 税费减免广搭平台 海口多项举措力促创业就业73844.ppt
- 税费减免广搭平台 海口多项举措力促创业就业25206.ppt
- 税费减免广搭平台 海口多项举措力促创业就业25047.ppt
- 税费减免广搭平台 海口多项举措力促创业就业73860.ppt
- 基于机载SAR数据的星载雷达杂波仿真技术研究与实践.docx
- 论恶意诉讼司法程序的困境与突破:基于法理与实践的深度剖析.docx
- 基于免疫的入侵检测攻击源追踪技术:原理、应用与挑战.docx
- 煤层采动诱发围岩电性动态演变机制与规律探究.docx
- 论商事租赁权物权化:基于法理、实践与制度构建的多维审视.docx
- 新疆传统奶疙瘩中乳酸菌筛选及其抗衰老活性的深度剖析与应用探索.docx
- 新疆巴州国内旅游流特征、影响因素及发展策略研究.docx
- 协商民主视域下党政领导干部竞争性选拔制度:群众公认的价值与实现路径.docx
- 生物还原路径下钯纳米颗粒可控合成的机制与应用探究.docx
- 高等真菌小分子探针Grifolin:解码信号转导新机制.docx
最近下载
- 如何申请国家自然科学基金项目市公开课金奖市赛课一等奖课件.pptx VIP
- 重氮化工艺培训.pptx VIP
- 6.2记录我的一天(课件)2024-2025 北师大版(2024)数学一年级上册.pptx VIP
- 高三中职数学高考复习《正弦定理》课件.pptx VIP
- 多核专题知识讲座.pptx VIP
- 律师事务所内部规章制度全套.doc VIP
- NY_T 3075-2017畜禽养殖场消毒技术.pdf
- 东南亚概况历史文化下省公开课一等奖全国示范课微课金奖PPT课件.pptx VIP
- 第16课 国家出路的探索与列强侵略的加剧 课件 -2025--2026学年高中《中外历史纲要(上)》(统编版).pptx VIP
- 有机硅性能和应用华乃震.ppt VIP
原创力文档


文档评论(0)