Java程序设计实训教程 教学课件 ppt 作者 汪志达 主编 程 琪 陈小冬 副主编 第2章 Java面向对象编程基础(上)

上传人:E**** 文档编号:89189405 上传时间:2019-05-21 格式:PPT 页数:46 大小:347KB
返回 下载 相关 举报
Java程序设计实训教程 教学课件 ppt 作者 汪志达 主编 程 琪 陈小冬 副主编 第2章  Java面向对象编程基础(上)_第1页
第1页 / 共46页
Java程序设计实训教程 教学课件 ppt 作者 汪志达 主编 程 琪 陈小冬 副主编 第2章  Java面向对象编程基础(上)_第2页
第2页 / 共46页
Java程序设计实训教程 教学课件 ppt 作者 汪志达 主编 程 琪 陈小冬 副主编 第2章  Java面向对象编程基础(上)_第3页
第3页 / 共46页
Java程序设计实训教程 教学课件 ppt 作者 汪志达 主编 程 琪 陈小冬 副主编 第2章  Java面向对象编程基础(上)_第4页
第4页 / 共46页
Java程序设计实训教程 教学课件 ppt 作者 汪志达 主编 程 琪 陈小冬 副主编 第2章  Java面向对象编程基础(上)_第5页
第5页 / 共46页
点击查看更多>>
资源描述

《Java程序设计实训教程 教学课件 ppt 作者 汪志达 主编 程 琪 陈小冬 副主编 第2章 Java面向对象编程基础(上)》由会员分享,可在线阅读,更多相关《Java程序设计实训教程 教学课件 ppt 作者 汪志达 主编 程 琪 陈小冬 副主编 第2章 Java面向对象编程基础(上)(46页珍藏版)》请在金锄头文库上搜索。

1、第2章 Java面向对象编程基础,I、面向对象基础 授课目的: (1).掌握面向对象的基本概念 (2).了解面向对象软件开发的基本过程 (3).掌握抽象,封装,继承,多态等 (4).了解面向对象程序设计方法的优点 教学重点: 1.面向对象的基本概念 2.抽象,封装,继承,多态,引论,面向对象的程序设计和问题力求符合人们日常自然的思维习惯,能够更好地适应当今软件开发在规模、复杂性、可靠性和质量、效率上的种种需求,降低、分解问题的难度和复杂性、提高整个求解过程的可控制性、可监测性和可维护性,从而以较小的代价和较高的效率获得较满意的效果。,一、面向对象的基本概念,1.对象、类与实体 (1).面向过程

2、的程序设计以具体的解题过程为研究和实现的主体; 面向对象的程序设计以具体的解题问题中涉及到的各种对象为主要矛盾; (2).对象的概念是面向对象技术的核心所在,所有的面向对象的程序都是由对象来组成的,这些对象首先是自治的、自恰的,同时它们可以互相通信、协调、配合,共同完成整个程序的任务和功能。,(3).实体:现实世界真实存在的事物,这种事物具有一定的属性和行为 例如: (i).一只名叫“小虎”的狗 属性:灰色,动物,有四条腿,长毛 行为:会跑,叫,咬人 (ii).课桌 (iii).计算机 (iv).张三 属性:性别:男性 年龄:24 电话号码:010-78754545 行为:睡觉 上课 (v).

3、王二麻子 属性: 性别:女性 年龄:21 电话号码:0577-79552738 行为:睡觉 上课,(4).对象:是现实世界中某个具体的物理实体在计算机逻辑中的映射和体现,用属性、方法模拟实体的属性和方法。 ZhangSan:属性: String sex=male Int old=24 String tel=” 010-78754545” 行为: HaveClass() PlayBall() Sleep() WangEr: 属性: String sex=female Int old=21 String tel=” 0577-79552738” 行为: HaveClass() Sleep(),(5

4、).类:类是一种抽象的数据类型,它是所有具有一定共性的实体的共同特征和抽象 学生:属性:年龄,性别,电话号码 行为:上课,睡觉 class Student private String sex; private String tel; private int old; private Boolean sleep(); private Boolean HaveClass(); ,2. 对象的属性 (1)对象具有三种属性: (i).状态:对象的静态属性,主要指对象内部所包含的各种信息,也就是变量 (ii).行为:表达对象的动态属性,设置或改变对象的状态,一就是改变变量的值 (iii).标志:每一个

5、对象都有一个属于它自己的唯一标志,国际性组织CORBA为对象定义了专用的128比特的标志量,保证对象能够相互区分(可用程序中的对象名表示) (2)(i).对象的方法把对象的内部变量包裹、封装、保护起来,只有对象自己的方法才能操作这些内部变量 (ii).对象的方法是对象与外部环境、其他对象交互、通信的接口,对象的环境和其他对象可通过这个接口调用对象的方法操作对象的行为和改变对象的状态。,对象: 现实情况 计算机实现 状态 变量 行为 对象方法 标志 对象名 对象是抽象数据结构类的实例化,先定义类,即定义同类对象公共的属性,包括变量和方法,再用对象名创建类的实例-对象,二、面向对象软件开发的基本过

6、程,1面向对象: 面向对象的分析(OOA):Object Oriented Analysis 面向对象的设计(OOD):Object Oriented Design 面向对象的编程(OOP):Object Oriented Program 2面向对象的软件开发过程: (1)应用软件开发的起点是用户的实际问题和需求 (2)终点是可较好解决用户实际问题和满足用户原始需求的应用软件 (3)开发过程 需求分析 需求模型化 概要设计 详细设计 实现 测试 维护,3.面向对象分析阶段 (1)需求分析 (2)需求模型化:通过对需要解决的实际问题建立模型来抽象、描述对象实体,最后形成OOA模型,将用户的需求准

7、确地表达出来。 (i)对象类层 捕捉要开发的应用软件所对应的各个现实世界的实体,并从中抽象出类 (ii)静态属性 为对象类层中抽取出来的各个类和对象设计静态属性(状态)和它们之间的约束关系(称为实例连接) 静态属性是类或对象所包含的各种状态和信息 实例连接体现了对象之间因特定的事物规则和限定条件而存在的约束关系。 (iii)服务层 服务层定义了对象和类的动态属性以及对象之间的消息通信.,(iv)结构层 结构层定义系统中所有对象和类之间的层次 对象间有包含和继承两种结构关 继承(一般-特殊) 包含(整体-部分),老师老师,教研室主任,王老师,学院,院长,李老师,(v)主题层 主题层将定义若干个主

8、题,把有关的对象分别划归不同的主题,每个主题成为一个子系统 4.对象的设计阶段 (1)概要设计:界面设计、任务管理、数据管理 (2)详细设计:是对概要设计所得的模型做进一步的细化分析、设计和验证。 细化设计包括确定静态数据属性,对类方法(即操作)的参数、返回值、功能和功能的实现的明确规定 5.实现阶段 (1)选择一种合适的面向对象的编程语言 (2)编码 (3)集成(模块) (4)测试,三、 面向对象程序设计方法的特点,1.抽象 (1)抽象是科学研究中经常使用的一种方法,即去除掉被研究对象中与主旨无关的次要部分,或是暂时不予考虑的一部分,而仅仅抽取出与研究工作有关的实质性的内容加以考察。 (2)

9、抽象分类:一、过程抽象 二、数据抽象 (3)过程抽象:将整个系统的功能划分成若干个部分,强调功能完成的过程和步骤 数据抽象:把系统中需要处理的数据和这些数据上的操作结合在一起,根据功能、性质、作用等因素抽象成不同的抽象数据类型。,2.封装 封装是指数据保护在抽象数据类型(类)的内部,系统的其他部分只能通过抽象数据类型的方法(类的方法)对此数据进行操作。 Public class Student private int old; public int getOld() return old; public SetOld(int Sold)old=Sold; ,3.继承 当一个类拥有另一个类的所有

10、数据和操作时,就称为这两个类之间具有继承关系。被继承的类称为父类或超类,继承了父类或超类的所有属性的类称为子类。 祖父 人 person 父亲 教师 teacher 儿子 教研室主任 ChairMan,4.多态:是指一个程序中同名的不同方法共存的情况 多态的实现 (1)子类对父类方法的覆盖 public class Employee privae double salary; AddSalary()Salary=Salary+102); public class Manager extends Employee AddSalary(int percent)Salary=Salary*(1+pe

11、rcent/100)+102; (2)在同一个类中定义多个同名的不同方法 public class Employee privae double salary; AddSalary() Salary=Salary+102; AddSalary(int percent) Salary=Salary*(1+percent/100)+102; ,四、面向对象程序设计方法的优点,1.可重用性 2.可扩展性 3.可管理性,2.1定义类,教学目的与要求 1.熟练掌握类定义的语法结构,类的方法的声明和使用 2.掌握创建类的修饰符、类头、类体的组成,引论,Java程序都是由一个个类组成,编写Java程序的过程

12、就是从现实问题中抽象出Java可实现的类并用合适的语句定义它们的过程,包括定义类内的各种属性和方法,创建类的对象,定义类间的关系和接口,一、定义类的过程就是定义类的属性和服务的过程: 类的属性就是类的静态属性,指类内包含的各项数据,如变量或其他类的对象 类的服务称为成员函数或方法 定义类语法结构: 修饰符 class 类名 extends 父类 implements 接口名 类成员变量声明; 类方法的声明; 类的定义:类头 类体 类头定义类的性质,类体定义类的具体内容,二、 声明类头 用class标志着一个类定义的开始,class后面是新定义类的类名 class Department int

13、m_DeptNo; /定义类属性m_DeptNo,代表部门编号 class Employee int m_EmpNo; /定义类属性m_EmpNo,代表雇员编号 int m_DeptNo; /定义类属性m_DeptNo,代表雇员所在的部门编号 ,1.父类名 新定义类名 extends 父类名 父类:Java类库中的定义的类,自定义的类 例: class Employee int m_EmpNo; int m_DeptNo; class CommonEmployee extends Employee int m_ManagerNo; class ManagerEmployee extends E

14、mployee int m_SecretaryNo; 继承可减少代码量,提高开发效率、质量和标准化程度,2. 接口名 implements 接口名 说明类中实现了哪个接口定义的功能和方法 接口是实现多重继承的一种机制 3.修饰符 访问控制符、抽象类说明符、最终类说明 (1)抽象类说明符abstract说明一个类是抽象类 (2)最终类说明符final说明一个类是最终类 (3)public是公共访问控制符,程序中的主类必须是公共类 例: public class MyJavaApplication public static void main(String args) System.out.pr

15、intln(“The main class of program is a public class”); ,三.声明类体 1.成员变量(类的属性) 类的属性可为简单变量,对象、数组等 类属性声明为简单变量语法: 修饰符 变量类型 变量名=变量初值; 声明类属性为对象语法: 修饰符 类名 对象名=new 类名(实际参数列表); 例: class Department int m_DeptNo; String m_DeptName; Int m_DeptTotalEmp; ManagerEmployee m_DeptMgr; ,A.类属性修饰符常用private,static B.如果使用另一个

16、类的对象为当前所定义类的属性,要保证另一个类在当前类是可见的 C.在类内用到该类的某个属性时,可通过该属性的名称直接使用 例: m_DeptNo+; D.使用其他类的属性时,需要加上对象的名称 例:m_DeptMgr.m_EmpNo+;,2.成员方法(类的方法) 类的方法:规定类属性上的操作,实现类的内部功能,也是类与外界进行交互的窗口 语法: 修饰符 返回值类型 方法名(参数列表) thows 例外名1,例外名2, 方法体: 局部变量声明; 语句序列; (1)方法的修饰符:包括访问控制符、静态修饰符static、抽象修饰符abstract、最终修饰符final、同步修饰符synchronous等 (2)类中

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 高等教育 > 大学课件

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号