Java程序设计及应用开发第4章-封装与类课件.ppt
- 【下载声明】
1. 本站全部试题类文档,若标题没写含答案,则无答案;标题注明含答案的文档,主观题也可能无答案。请谨慎下单,一旦售出,不予退换。
2. 本站全部PPT文档均不含视频和音频,PPT中出现的音频或视频标识(或文字)仅表示流程,实际无音频或视频文件。请谨慎下单,一旦售出,不予退换。
3. 本页资料《Java程序设计及应用开发第4章-封装与类课件.ppt》由用户(三亚风情)主动上传,其收益全归该用户。163文库仅提供信息存储空间,仅对该用户上传内容的表现方式做保护处理,对上传内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知163文库(点击联系客服),我们立即给予删除!
4. 请根据预览情况,自愿下载本文。本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
5. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007及以上版本和PDF阅读器,压缩文件请下载最新的WinRAR软件解压。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- Java 程序设计 应用 开发 封装 课件
- 资源描述:
-
1、利用数据抽象和数据隐藏技术创建类创建和使用对象对属性和方法进行访问方法的重载构造方法及其使用this引用的用法static方法和属性的使用类的组合方法包的创建和使用面向过程的程序设计中,问题被看作一系列需要完成的功能模块,函数(泛指高级语言实现功能模块的实体)用于完成这些任务,解决问题的焦点是编写函数,函数是面向过程的,它关注如何依据规定的条件完成指定的任务。在多函数程序中,许多重要的数据被放置在全局数据区,这样它们可以被所有的函数访问(每个函数还可以具有它们自己的局部数据),这种数据和对数据的操作相分离的结构很容易造成全局数据在没商量的情况下被改动,因而程序的正确性不易保证。面向对象的程序设
2、计将数据和对数据的操作行为封装在一起,作为一个相互依存、不可分割的整体-类。类中的大多数数据只能为本类的行为使用,类会提供公开的外部接口与外界进行通信。类是抽象的数据类型,用类创建对象。程序的执行,表现为一组对象之间的交互通信。对象之间通过公共接口进行通信,从而完成系统功能。面向对象的程序模块间关系简单,程序的独立性高、数据安全。面向对象的显著特点包括:封装性、继承性和多态性。封装:把对象的属性和操作结合为一个独立的整体,并尽可能隐藏对象的内部细节。“封装”的两个含义 把对象的全部属性和全部服务结合在一起,形成一个不可分割的独立单位 实现“信息隐蔽”,尽可能隐藏对象的内部细节,对外界形成一个边
3、界,只保留有限的外部接口与外界进行联系。类作为一个抽象的数据类型,用来描述相同类型的对象。面向对象编程就是定义这些类。“抽象”是面向对象设计中的重要环节。面向过程程序设计:自顶向下,逐步求精面向对象设计:从设计类开始,然后向类中添加方法面向对象的思维方式:以对象为中心,分析对象的行为、状态,抽取出类的设计。有一个酒店,酒店有若干客房,向客户提供查询、有一个酒店,酒店有若干客房,向客户提供查询、入住、退房等功能。入住、退房等功能。名词对象动词对象的行为酒店酒店 客房客房 客户客户查询查询入住入住退房退房1定义类的语法格式类的修饰符 class 类名 extends 父类名 /类体【例4-1】定义
4、一个酒店类Hotel。(1)类的访问控制符(2)数据成员(成员变量):记录对象性质和状态的变量(3)数据成员的set和get方法(4)构造方法1.数据成员 修饰符 数据类型 成员名=默认值;例:privateprivate String hotelName;privateprivate String rooms;数据类型关键字缺省数值布尔型booleanfalse字符型charu0000字节型byte0短整型short0整型int0长整型long0浮点型float0.0F双精度型double0.0D引用类型类、接口null2.方法一般是对类中的数据成员进行操作数据访问公共接口:如果类中的数据成
5、员是private型的,则往往定义public的方法来设置数据成员的值或读取数据成员的值3.构造方法 构造方法名与类名相同 构造方法一般用于初始化类的对象 创建类的对象时,new运算符为该对象分配内存,并调用构造方法来初始化该对象如果一个类中未定义构造方法,则编译时系统会自动提供一个缺省的无参的构造构造方法,其方法体为空。public 类名()至少写一个无参的构造方法this 区分成员变量和方法的局部变量this()调用本类的其他构造方法对象是类的一个实例 类是抽象的,对象是具体的 酒店:类 某个酒店:对象对象:通过new关键字调用某个构造方法创建,为该对象分配内存空间,并按照构造方法的方法体
6、对对象的数据成员赋初值,创建好的对象在堆内存中。引用:Java不允许直接访问堆内存中的对象,只能通过对象的引用变量操作该对象,引用变量在栈内存中【例】酒店问题中的对象和引用。垃圾回垃圾回收收机制机制this:代表一个引用,指向正在调用该方法的当前对象。hotel.setHotelName(MiniStarwood);publicpublic voidvoid setHotelName(String hotelName)thisthis.hotelName=hotelName;【例4-2】设计swap()方法交换两个Hotel的对象。交换引用变量【例4-2】设计swap()方法交换两个Hotel
7、的对象。交换引用变量指向的数据当在类中声明一个成员时,可以指定它是为一个类的各个对象各自拥有(实例成员),还是为一个类的所有对象共享(类范围的成员)。类范围的成员称为静态成员,以关键字static声明。static数据成员:为类的对象所共享的数据static方法:工具方法,不必创建对象直接使用类名即可调用。Math.PIMath.random()Math.sin()虽然static成员也可以通过对象来引用,但是,绝对不鼓励这个方式。强烈建议使用类名类名.成员成员的形式进行存取,以区别于非static成员。在static方法中不允许使用非static成员在非static方法中既可以使用非stat
展开阅读全文