版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、2022/9/16第 1 页注意:开始用功了!2022/9/16第 2 页Java2实用教程(第4版) 第4章配合例子源代码一起使用Power point 制作:耿祥义 张跃平类与对象2022/9/16第 3 页主要内容类构造方法与对象的创建类与程序的基本结构参数传值对象的组合实例成员与类成员方法重载this关键字包import语句对象数组导读2022/9/16第 4 页4.1 编程语言的几个发展阶段 4.1.1 面向机器语言 计算机处理信息的早期语言是所谓的机器语言,使用机器语言进行程序设计需要面向机器来编写代码,即需要针对不同的机器编写诸如0101 1100这样的指令序列。 4.1.2 面
2、向过程语言 随着计算机硬件功能的提高,在20世纪60年代出现了面向过程设计语言,如C语言等。用这些语言编程也称为面向过程编程。语言把代码组成叫做过程或言函数的块。每个块的目标是完成某个任务。使用这些语言编写代码指令时,不必再去考虑机器指令的细节,只要按着具体语言的语法要求去编写“源文件”。4.1.3 面向对象语言 基于对象的编程更加符合人的思维模式,使得编程人员更容易编写出易维护、易扩展和易复用的程序代码,更重要的是,面向对象编程鼓励创造性的程序设计。 面向对象编程主要体现下列三个特性 封装性 继承 多态2022/9/16第 5 页4.2 类 类是Java语言中最重要的“数据类型”,类声明的变
3、量被称作对象(见后面的4.3节),即类是用来创建对象的模板。 类的实现包括两部分:类声明和类体。基本格式为:class 类名 类体的内容class是关键字,用来定义类。“class 类名”是类的声明部分,类名必须是合法的Java标识符。两个大括号以及之间的内容是类体。 2022/9/16第 6 页4.2.1 类声明 类声明 :class 类名以下是两个类声明的例子。 class People class 植物 如:class People”和“class 植物”称作类声明;“People”和“动物”分别是类名。 给类命名时,遵守下列编程风格(这不是语法要求的,但应当遵守): 1如果类名使用拉丁
4、字母,那么名字的首字母使用大写字母,如。 2类名最好容易识别、见名知意。当类名由几个“单词”复合而成时,每个单词的首字母使用大写。 2022/9/16第 7 页4.2.2 类体 类声明之后的一对大括号“”,“”以及它们之间的内容称作类体,大括号之间的内容称作类体的内容。 类体的内容由两部分构:一部分是变量的声明,用来刻画属性;另一部分是方法的定义,用来刻画行为功能。 class Lader float above; /梯形的上底(变量声明) float bottom; /梯形的下底(变量声明) float height; /梯形的高(变量声明) float area; /梯形的面积(变量声明)
5、 float computerArea() /计算面积(方法) area = (above+bottom)*height/2.0f; return area; void setHeight(float h) /修改高(方法) height = h; 2022/9/16第 8 页4.2.3 成员变量 类体中变量声明部分所声明的变量被称作成员变量。 1变量的类型:成员变量的类型可以是Java中的任何一种数据类型,包括基本类型:整型、浮点型、字符型;引用类型:数组、对象和接口(对象和接口见后续内容)。2变量的有效范围:成员变量在整个类内都有效,其有效性与它在类体中书写的先后位置无关 3编程风格(1)
6、一行只声明一个变量。 (2)变量的名字符合标识符规定。 (3)变量名字见名知意,避免容易混淆的变量名字。2022/9/16第 9 页4.2.4 方法 方法的定义包括两部分:方法声明和方法体。一般格式为: 方法声明部分 方法体的内容 1方法头 方法头由方法的类型、名称和名称之后的一对小括号以及其中的参数列表所构成。无参数方法定义的方法头中没有参数列表,即方法名称之后一对小括号中无任何内容,例如: int speak() /无参数的方法头 return 23; int add(int x,int y,int z) /有参数的方法头 return x+y+z; 根据程序的需要,方法返回的数据的类型可
7、以是Java中的任何数据类型之一,当一个方法不需要返回数据时,返回类型必须是void。参数是用逗号隔开的一些变量声明。方法的参数可以是任意的Java数据类型。方法的名字必须符合标识符规定,在给方法命名的习惯和给变量命名的习惯相同。2022/9/16第 10 页 2方法体 方法声明之后的一对大括号“” ,“”以及之间的内容称为方法的方法体。 方法体的内容包括局部变量的声明和Java语句。 在方法体内可以对成员变量和方法体中声明的局部变量进行操作。在方法体中声明的变量和方法的参数被称作局部变量,如: int getSum(int n) /参数变量n是局部变量 int sum=0; / 声明局部变量
8、sum for(int i=1;i9) int z = 10; /z仅仅在该复合语句中有效 z = 2*m+z; for(int i=0;i jar cfm Jerry.jar hello.mf moonstarTestOne.class moonstarTestTwo.class 2022/9/16第 68 页4.17 应用举例 1有理数的类封装 有理数有两个重要的成员:分子和分母,另外还有重要的四则运算。我们用Rational类实现对有理数的封装,Rational类的UML图如图4.31所示。 例子22 给出了Rational类的代码 2022/9/16第 69 页 例子23中的Examp
9、le4_23.java的主类使用Rational对象计算两个分数的四则运算,并计算了2/1+3/2+5/3的前10项和 程序的运行结果如下:1/5+3/2 = 17/101/5-3/2 = -13/101/53/2 = 3/101/53/2 = 2/15计算2/1+3/2+5/3+8/5+13/8的前10项和.用分数表示:998361233/60580520用小数表示:16.479905306194137 2022/9/16第 70 页 例子24用流水线完成分数评定,主类是SingGame.java.其它类:InputScore类的对象负责录入分数, InputScore类组合了DelScore类的对象。 DelScore类的对象负责去掉一
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 《材料失效分析》教学大纲
- 玉溪师范学院《社会政策》2023-2024学年第一学期期末试卷
- 玉溪师范学院《美国社会与文化》2022-2023学年第一学期期末试卷
- 函数定义域求法教案
- 人力培训 -绩效面谈沟通技巧及改进方案
- 2019粤教版 高中美术 选择性必修6 现代媒体艺术《第三单元 中期的设定与拍摄》大单元整体教学设计2020课标
- 2024届河北省衡水中学高三下学期三校五测数学试题试卷
- 2024届贵州省都匀一中高考原创信息试卷数学试题(三)
- 财务咨询商业计划书合同
- 被褥购买协议书范本
- 中国医科大学2024年12月(含解析)《形势与政策》作业考核试题
- 中国物联网安全行业市场现状、前景分析研究报告(智研咨询发布)
- 湘潭、成都工厂VDA63-2023审核员培训考核附有答案
- 济南2024年山东济南市文化和旅游局所属事业单位招聘人选笔试历年典型考题及考点附答案解析
- 助产专业职业生涯规划
- 整理收纳师课件
- (完整word版)英语四级单词大全
- 《烟酒有危害》公开课教案
- 《罗密欧与朱丽叶》剧本
- [doc] 增强动态分散条件下部队管理工作实效
- 中国联通LAN工程施工及验收规范
评论
0/150
提交评论