类与面向对象编程

类与面向对象编程

ID:39619932

大小:1.23 MB

页数:78页

时间:2019-07-07

类与面向对象编程_第1页
类与面向对象编程_第2页
类与面向对象编程_第3页
类与面向对象编程_第4页
类与面向对象编程_第5页
资源描述:

《类与面向对象编程》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、第四章类与面向对象编程面向对象编程基础类的编程实现对象的定义与使用重载访问控制符其他修饰符目标:面向对象编程思想学习重点:类、对象、构造方法、重载4.1面向对象编程基础4.1.1面向对象编程的基本概念面向对象编程与传统的面向过程编程的区别面向过程编程:按照计算机的问题处理逻辑来描述和处理现实世界中的具体问题,采用结构化程序设计和编程方法,将复杂任务逐步分解为多个子任务,用一组函数实现任务求解。(动宾结构)面向对象编程:程序的设计和编写力求符合人们的思维方式,让计算机处理模拟人们对现实世界的问题求解方法,使现实世界中的事务与面向对象程序中的类和对象相对应。(主谓结构)4.1.1面向对象编程

2、的基本概念1、对象(Object):两个层次,一一对应----客观存在。现实生活中的对象:客观世界中的实体(属性和行为);程序中的对象:变量和相关方法的集合(数据和方法);即类是对象的抽象,而对象则是类的实例化(具体化)实体对象(有共同特征)描述映射抽象抽象数据类型程序对象类4.1.1面向对象编程的基本概念2、类(Class)----对应现实世界的类别将具有共性的一类对象,抽象为“类”---概念上的意义。是一种数据类型,在Java中是一种复合/引用数据类型。类是创建某一类对象的模板,属于类的某个对象为类的一个实例,使用对象前需要先定义它所属的类。类中定义一类对象共有的变量和方法。类的定义

3、可实现代码的复用。我们不用去描述每一个对象(如某辆汽车),而是通过创建类(如汽车类)的一个实例来创建类的一个对象,这大大减化了软件的设计。4.1.1面向对象编程的基本概念3、成员与方法抽象为一个类的不同对象具有许多相同的特点,这些特点基本上可以分为两类:一是描述对象静态状态的,这就是对象的属性/状态,在程序设计中,称之为变量(Variable)/成员;另一个是描述对象的动作和行为,这就是对象的方法(Method),方法决定了该类中的数据如何使用。例:“汽车”的属性:颜色、重量、功率、速度等;方法:前进、后退、加速、减速等。汽车类示例classCar{intcolor_number;int

4、weight;…voidbrake(){…};voidspeedUp(){…};voidslowDown(){…};…}4.1.2面向对象编程的优点与面向过程编程相比较,面向对象编程具有如下优点:提高了程序的可维护性(全局变量-不共享数据)可重用性高---继承(提高效率,降低成本)保护数据-----封装类比:组装电脑4.1.3对象的抽象抽象是一种思维形式,就是把事物共同点抽取出来,以统一的方式进行概要描述的一种过程。轿车卡车公交车汽车对象类汽车火车轮船飞机对象交通工具类具体化/实例化抽象4.1.3对象的抽象面向对象的编程中,系统由多个包含不同属性和方法的对象组成,每个对象实现部分功能。(

5、如上页交通工具)什么是抽象:用面向对象的方法解决现实世界的问题时去掉物体中与问题不相关的部分,形成所需要类的过程,称为抽象。采用数据抽象方法----构建程序的类实体现实世界概念模型抽象对象类抽象实例化映射计算机中的实现4.1.4封装什么是封装:封装是将数据和对数据的操作封装在一个抽象的数据类型中,数据被保护在抽象数据类型的内部,其他对象只能通过接口与数据进行交互。私有数据方法方法数据对象A对象B公有数据接口4.1.4封装在程序中,用类将数据和方法封装在类体中。模块之间通过接口进行交互。封装技术的优点:(1)降低问题的复杂度;(2)提高了类或模块的可重用性;(3)保护数据的完整性和安全性。

6、类比:计算机的主机4.2类的编程实现为什么使用类采用基本数据类型表示现实世界中的概念存在一些局限性。例如:采用int型数据表示一个日期概念,需要使用3个变量:intday,month,year;如果要表示2个人的生日,就要使用6个变量。而使用类就可以避免这种情况,因为类中不但有变量,还有与之相关的操作所定义的方法,将变量和方法放在一个类中,外部对类成员的访问都通过方法进行,从而隐藏成员变量,保护类成员不被非法修改。4.2.1类定义语法结构:[修饰符]class类名[extends父类名][implements接口名]//类头{类成员声明及初始化;类方法声明及方法体;}修饰符:说明类的性质

7、,包括访问控制符(空或public)和类型说明符(abstract抽象、final最终)。类名:用户自定,约定每个单词的首字母大写。extends父类名:实现继承/派生implements接口名:多重继承类体二者不能同时修饰一个类4.2.1类定义类声明只是创建一个模板(或类型描述),并不会创建一个实际的对象,只有用new方法创建一个该类的实例对象时,才具有“物理”的真实性。例BoxDemo.java的源程序4.2.2域/成员变量的定

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。