第5章对象与类_第1页
第5章对象与类_第2页
第5章对象与类_第3页
第5章对象与类_第4页
第5章对象与类_第5页
已阅读5页,还剩11页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

2023/1/111Java程序设计及应用开发教程主编:虞益诚E-mail:yuyich@教学课件Java程序设计及应用开发教程构架Java语言以其面向对象性、可重用性、平台无关性、多线程、安全可靠等特性成为网络程序设计中的佼佼者,受到广泛的青睐三大模块Java概述与语言基础Java异常处理图形用户界面编程Java线程机制与AppletJavaJava应用开发与课程设计实例教参Java流程控制及数组与字符串高级GUI设计技术输入输出流Java网络编程基础Java数据库连接第13-15

应用开发篇

第1-6

章基础知识篇

第7-12章程序设计篇

面向对象程序设计和继承与多态2023/1/11第5章对象与类3第5章对象与类5.1面向对象基础5.2类5.3成员变量5.4方法5.5实例对象5.6类的应用实例 本章本章主要讲述了对象及其特点、面向对象软件的开发过程、类的定义与构成,同时介绍了方法、对象与构造方法、类的成员变量等。2023/1/11第5章对象与类45.1面向对象基础5.1.1

面向对象概述对象及其特点

对象(Object)是世界万物在人脑中的映像,是系统中用来描述客观事物的一个实体,它是构成系统的一个基本单位,。对象特点:对象的状态属性、对象的行为操作、某类事物的抽象、对象间的关联和作用。面向对象方法5.1.2

面向对象软件的开发过程面向对象方法的程序开发过程可以大体划分为面向对象的分析(ObjectOrientedAnalysis,OOA)、面向对象的设计(ObjectOrientedDesign,OOD)、面向对象的实现(ObjectOrientedProgramming,OOP)三个阶段。1.面向对象的分析面向对象的分析的主要作用是明确用户的需求,并用标准化的面向对象的模型规范地表述这一需求,最后将形成面向对象的分析模型,即OOA模型。2023/1/11第5章对象与类55.1面向对象基础2.面向对象的设计如果说分析阶段应该明确所要开发的软件系统“干什么”,那么设计阶段将明确这个软件系统“怎么做”。面向对象的设计将对OOA模型加以扩展并得到面向对象的设计阶段的最终结果:OOD模型。面向对象的设计将在OOA模型的基础上引入界面管理、任务管理和数据管理三部分的内容,进一步扩充OOA模型。3.面向对象的实现面向对象的实现就是具体的程序编码阶段,其主要任务包括:选择一种合适的面向对象的编程语言,如C++、Java等。用选定的语言编码实现详细设计步骤所得的公式、图表、说明和规则等对软件系统各对象类的详尽描述。将编写好的各个类代码模块根据类的相互关系集成。利用开发人员提供的测试样例和用户提供的测试样例分别检验编码完成的各个模块和整个软件系统。实现、编程阶段完成后,即可步入运行了。

5.1.3

面向对象程序设计方法的优点2023/1/11第5章对象与类65.1面向对象基础0面向对象方法的特性特性主要包括:抽象性、封装性、继承性与多态性。面向对象程序设计方法优点可重用性.可扩展性.可管理性.可自律性.可分离性.接口和消息机制。5.2类5.2.1

类的概念

类及其与对象的关系

类是对该类对象的抽象描述,是一种复杂的数据类型,它是将数据属性及其相关操作封装在一起的集合体,包括了对象的属性与方法或特征与行为,它是对象(事物)的模板或蓝图。类是对一类对象的抽象描述,对象是类的实例化。

2023/1/11第5章对象与类75.1面向对象基础0面向对象方法的特性特性主要包括:抽象性、封装性、继承性与多态性。面向对象程序设计方法优点可重用性.可扩展性.可管理性.可自律性.可分离性.接口和消息机制。5.2类5.2.1

类的概念

类及其与对象的关系

类是对该类对象的抽象描述,是一种复杂的数据类型,它是将数据属性及其相关操作封装在一起的集合体,包括了对象的属性与方法或特征与行为,它是对象(事物)的模板或蓝图。类是对一类对象的抽象描述,对象是类的实例化。

2023/1/11第5章对象与类85.2类5.2.2类的定义修饰符class类名[extends父类名][implements接口名]{

类体内容 }说明:(1)其中修饰符用来说明类的属性。(2)class是关键字,用来定义类。(3)extends关键字用来指明该类的父类,class类名是子类(4)implements关键字用来引出接口,以供本类中使用类体构成类体内容是java的主体部分,用以完成变量的说明以及方法的定义与实现。类体通常由变量和方法两部分组成,变量描述该类对象的属性,说明对象所处的状态;方法描述该类对象的行为或功能。2023/1/11第5章对象与类95.2类类体构成及类的详细描述类体结构定义如下:

class类名

{//两括号间为类主体

<成员变量的声明> <成员方法声明及实现> }

整个类的详细结构定义如下:修饰符class类名[extends父类名][implements接口名]{

修饰符类型成员变量[=初值];//成员变量序列

修饰符类型成员方法[(参数列表)//方法体

{

类型局部变量[=初值];//变量序列 语句序列;

}…}

【例4-1】根据笛卡儿坐标中点的相应位置,创建一个Cpoint类。

2023/1/11第5章对象与类105.3成员变量类的成员变量是指在位于类的内部和方法定义外部所定义的变量,其作用域是整个类,即同一类中的所有方法都可以对它通过名字进行访问。方法体定义的变量则称方法变量,它的作用域仅限于方法体内。

类成员变量定义格式格式为:

[修饰符]类型变量列表【语法说明】(1)修饰符为可选项,可以是public、protected、private、static、final、transient、volatile等,用以说明成员变量的访问权限。(2)类型可以是java中任一合法的数据类型。(3)变量列表是一组用“,”隔开的显式定义的变量名。

【例4-15】使用static修饰符创建一个学生档案信息。

classE_final{publicstaticvoidmain(Stringargs[]){System.out.println(Tom.MIN);Tomtom=newTom();intx=0;x=tom.MIN+tom.MAX;System.out.println(x);}}classTom{finalintMAX=70;staticfinalintMIN=30;}

5.6复合数据类型数组

本章结束!!2023/1/11第5章对象与类115.4方法5.4.1方法声明方法声明方法是类的主要组成部分,程序的作用体现在附有名字的子程序即方法中。一个类由一个主方法和若干个子方法构成。类的方法又称成员方法规范说明P100常用方法:部分常见方法如表4-1所示【例4-3】5.4.2方法调用方法的调用即该方法的调用运行。例如isPfime();【例4-4】调用业已定义的方法Scircle,Area,计算面积。5.4.3参数传递

参数传递方式有传值与传地址两种。若方法的参数为简单数据类型,则传值,即将实参的值传递给形参若方法的参数为复合数据类型(对象),则传地址,即将实参的地址传递给形参。【例4-8】参数传递与变化。【例4-9】不同类间的参数传递。5.4.4构造方法

2023/1/11第5章对象与类125.4方法5.4.4构造方法

构造方法,即类的同名方法泛称为构造方法。特点:(1)构造方法是一种特殊的方法,它的名字必须与它所在的类的名字完全相同,且不返回任何数据类型,即它是省略void关键字的void型,构造方法允许多态性。(2)类一般都有构造方法,若无系统则自动添加无参构造方法,系统自动地将所有的实例变量初始化为零。接口不允许被实例化,所以接口中没有构造方法。(3)重载经常用于构造方法。构造方法可以继承,即子类可以继承父类的构造方法。5.44递归递归系指用自身结构来循环调用自己。【例4-10】采用递归算法求n!(n=10)2023/1/11第5章对象与类135.5对象5.5.1对象的创建在Java语言里用new关键字来创建对象,其语法格式为:两句语句直接完成:类名

对象名;对象名=new类名([参数列表]);

或可一句语句直接完成:类名

对象名=new类名([参数表]);使用new后,java实际上完成了如下操作:(1)在指定类上创建了一个对象;(2)为该对象分配了引用内存空间(类似于数组分配内存空间);(3)执行由指定类所定义的构造方法完成一系列初始化工作。

例如,系统已创建了Person类,利用它可生成两个对象Mali和John:PersonMali; \\Mali对象两句语句完成Mali=newPerson();PersonJohn=newPerson(); \\John对象一句语句完成

2023/1/11第5章对象与类145.4对象5.5.2对象的引用Java中,当用类创建一个对象后,该对象就拥有了自己的成员变量和方法,对象通过使用这些方法可以产生一定的行为。即可以达到通过引用对象成员变量和方法的形式来引用对象。通过运算符“.”可以实现对变量的访问和方法的调用。变量和方法可以通过设定访问权限来限制其它对象对它的访问。引用成员变量 引用对象的成员变量(1)对象名.成员变量名此方式使用于类对象已创建(PersonJohn=newPerson();已完成)。例如:J//引用John对象的成员变量name。又如:John.x=150;(2)new构造方法名([参数列表]).成员变量名此方式适用于在创建对象与引用成员变量同时进行的情形下。例如:在未执行创建、初始化Person类对象时,newPerson().name语句同时引用匿名对象的成员变量name。又如:tx=newPerson().x;。2023/1/11第5章对象与类155.4对象引用成员方法引用成员方法的方式有如下两种:(1)对象名.方法名([参数列表])此式用于类对象已建(类Person与对象John已建,且包含pay(inta))。例如:John.pay(25)//引用John对象的成员方法pay()。又如:John.move(30,20);(2)new构造方法名([参数列表]).方法名([参数列表])此方式适用于在创建对象与引用成员方法同时进行的情形下。例如:在未执行创建、初始化Person类对象时,newPerson().pay()语句同时引用匿名对象的成员方法pay()。又如:newPoint().move(30,20);【例4-

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论