《Java语言导学(原书第6版)》一一2.1 对象

简介: 本节书摘来自华章出版社《Java语言导学(原书第6版)》一 书中的第2章,第2.1节,作者:[美] 雷蒙德·盖拉多(Raymond Gallardo) 斯科特·霍梅尔(Scott Hommel) 索亚·坎南(Sowmya Kannan) 琼尼·戈登(Joni Gordon) 沙伦·比奥卡·扎卡沃(Sharon Biocca Zakhour) 著 ,更多章节内容可以访问云栖社区“华章计算机”公众号查看。

2.1 对象
对象是理解面向对象技术的关键概念。生活中有很多对象的例子,如狗、桌子、电视机、自行车等。
生活中的对象都有两个共同的属性:状态和行为。狗有名字、颜色、品种等状态,以及犬吠、抓东西、摇尾巴等行为。自行车有当前档位、当前脚踏频率、当前速度等状态和换档、变换踏板频率、刹车等行为。根据面向对象编程的思路来确定生活中对象的状态和行为是很好的方法。
前面已经介绍了生活中的几个对象。对每个对象,都有两个问题:“它处于什么状态”和“它会发生什么行为”。仔细观察并写下这些状态和行为,会发现生活中的对象差别很大。例如,台灯只有两个状态(开、关)和两种行为(打开、关闭),而收音机有其他状态(开、关、当前音量、当前电台)和行为(打开、关闭、提高音量、降低音量、搜索、扫描、调频)。而且,有些对象还包含其他对象。这些观察结果都可以翻译成面向对象程序。
就概念而言,软件对象与生活中的对象类似,也包含状态和行为两大属性。如图2-1所示,软件对象用字段(field,有些程序语言称为变量,variable)存储状态,用方法(method,有些程序语言称为函数,function)定义行为。方法对对象的内部状态进行操作,是对象之间通信的基本机制。这种隐藏对象内部状态,要求所有通信都通过对象的方法实现的行为,是面向对象编程的基本原则,通常称为数据封装。
图2-2以自行车为例来说明。外界如何使用对象,取决于其状态(当前档位、当前脚踏频率、当前速度)和改变状态的方法。如果自行车只有6个档位,就不能将其换成低于1或大于6的档位。
   
    image

将代码构建成独立的软件对象,具有以下优点:
1)模块化。每个对象的源代码,其编写和维护都独立于其他对象。对象一旦创建,就很容易在系统内传送。
2)信息隐藏。用户只能与对象的方法交互,对象的内部实现细节对外界是隐藏的。
3)代码重用。如果对象已经创建(可能是其他开发人员编写),就可以直接使用该对象。这样一来,写程序时就可以直接调用那些由专家实现、测试和调试通过的复杂、特定功能的对象。
4)可插拔和易于调试。当个别对象出问题时,可以将其从程序中移除,并插入另一个对象来替换它。这与现实生活中的维修机制类似。比如说,机器的螺栓坏了,只需更换该螺栓,而不需要更换整台机器。

相关文章
|
2月前
|
Java
【详识JAVA语言】方法的使用
【详识JAVA语言】方法的使用
24 1
|
5月前
|
Java Android开发
Java语言
(1)Java SE(Java Platform, Standard Edition)。称之为‘Java平台标准版’,主 要学习Java语言的语法规范和常见类。 (2)Java EE(Java Platform,Enterprise Edition)。称之为‘Java平台企业版’,主 要学习Java后台开发技术,编写B/S架构(浏览器/服务器)项目。 (3)Java ME(Java Platform,Micro Edition)。称之为‘Java平台微型版本’,随着 Android平台的迅速普及已经走向淘汰。
40 0
|
Java 测试技术
PAT B1009 说反话(Java语言)
PAT B1009 说反话(Java语言)
41 0
|
Java 定位技术 数据处理
零基础学习Java语言——6、使用对象(2)
零基础学习Java语言——6、使用对象(2)
89 1
零基础学习Java语言——6、使用对象(2)
|
Java C++
Java语言中接口的详解
Java语言中接口的详解
Java语言中接口的详解
|
存储 Java C语言
【Java】终于可以给自己new对象了——Java类和对象(一)
【☕Java】,千呼万唤始出来,终于可以给自己new对象了——Java类和对象
【Java】终于可以给自己new对象了——Java类和对象(一)
|
Java 编译器
【Java】终于可以给自己new对象了——Java类和对象(三)
【☕Java】,千呼万唤始出来,终于可以给自己new对象了——Java类和对象
【Java】终于可以给自己new对象了——Java类和对象(三)
|
Java 数据安全/隐私保护
【Java】终于可以给自己new对象了——Java类和对象(二)
【☕Java】,千呼万唤始出来,终于可以给自己new对象了——Java类和对象
【Java】终于可以给自己new对象了——Java类和对象(二)
|
Java 程序员 C++
Java语言知识
Java设计目的是让专业程序员觉得既易学又好用。
165 0
|
存储 Java 编译器
【Java】终于可以给自己new对象了——Java类和对象
【Java】终于可以给自己new对象了——Java类和对象
【Java】终于可以给自己new对象了——Java类和对象