封装性利用案例轻松学习Java语言配套.ppt_第1页
封装性利用案例轻松学习Java语言配套.ppt_第2页
封装性利用案例轻松学习Java语言配套.ppt_第3页
封装性利用案例轻松学习Java语言配套.ppt_第4页
封装性利用案例轻松学习Java语言配套.ppt_第5页
已阅读5页,还剩8页未读 继续免费阅读

下载本文档

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

文档简介

吉首大学软软件服务务外包学院 第三讲:封装性 主讲:覃遵跃 清华大学出版社 利用案例轻松学习Java语言(2013年) 配套课件PPT 吉首大学软软件服务务外包学院 课程导入 前面的程序中,对象可以引用任何数据成员和成员方法,如何限 制对象是否能够访问数据成员和成员方法是我们本次课要解决的主 要问题。 (1)类的设计; (2)定义构造方法,利用构造方法实例化对象; 1、已经学习的相关知识 2、思考问题 (3)创建对象,并引用对象的数据成员和成员方 法; 吉首大学软软件服务务外包学院 吉首大学软软件服务务外包学院 3.1 面向对象编程三大特征 通过类封装对象的数据成员和成员方法, 保证只 有可信的类或者对象能够访问这些方法和数据成员, 对不可信的类或者对象进行信息隐藏。 继承是从已有的类中派生出新的类,新的类能 吸收已有类的数据成员和方法,并能扩展新的能力 。 多态性是指不同的对象,收到同一消息可以产 生不同的结果。 吉首大学软软件服务务外包学院 3.2 面向对象编程的封装性 但在前面的案例Student类中,外部程序可以很方便的访问类的内部成 员,没有达到信息隐藏的目的。 访问数据成员: 访问成员方法:std1.printInfo() 访问构造方法:new Student() 定义类时,在数据成员和成 员方法前设置访问权限控制符, 保证只有可信的类或者对象能够 访问这些数据成员和成员方法, 而不可信的类或者对象不能访问 ,达到信息隐藏的目的。 封装性? 没有限制, 都可吃! 有限制,允许 可以吃 问题1:有哪些访问权限控制符? 吉首大学软软件服务务外包学院 3.2 面向对象编程的封装性 在Java语言中,利用访问权限控制符private来实现封装功能,确 保外部程序不能直接访问数据成员或者成员方法。 封装数据成员: private 数据类型 数据成员名称; 封装成员方法: private 方法返回值 方法名称(参数列表) private 类名(参数列表) 封装构造方法 private封装结果 : 利用private修饰的数据成员和方法只能在类体中访问,而在类体 外不能访问。 注意! 吉首大学软软件服务务外包学院 3.2 面向对象编程的封装性 案例3-1:利用private实现数据成员和成员方法的封装。 封装数据成员 封装成员方法 在TestStudent类中引用类Student 封装的printName()方法报错 在TestStudent类中引用类 Student封装的name成员报错 吉首大学软软件服务务外包学院 3.3 setter与getter方法 利用private访问权限控制符修饰的任何部分都只能在类体中访问, 不能在类的外部访问。 private只是实现封装性 的一种措施,不同的封 装层次将采用不同的方 法,在后面将详细介绍 不同封装层次的解决办 法。 类体中访问 如何在类类外部访问访问 私有数据成员员? setter方法对私有 数据成员进 行修改 getter方法来读读取 私有数据成员 问题2:什么是setter方法和getter方法? 吉首大学软软件服务务外包学院 3.3 setter与getter方法 案例3-2:利用setter方法和getter方法访问 Student类中的私有数据成员 。 封装数据成员 name getter方法取得封装 name setter方法修改 封装name name被封装,不 能在类类外部访问访问 age没有被封装, 可以在类类外部访问访问 课堂练习1:设计手机类 ,把所有数据成员设置 为私有成员,利用 setter和getter方法来 操作这些私有成员。 吉首大学软软件服务务外包学院 3.4 this关键字 在定义类时义类时 ,可能存在几种情 况 成员员方法的形式 参数名与数据成 员员同名 构造方法的形式 参数与数据成员员 同名 成员员方法中的局部 变变量与数据成员员同 名 this关键键字解 决 吉首大学软软件服务务外包学院 3.4 this关键字 this就是本身对象 的一个指针 构造方法的第一条语句 吉首大学软软件服务务外包学院 3.5 课堂小结 2、封装的作用与机制? 3、在类体外如何修改读取被private封装的数据成员? 通过getter方法读取被private封装的数据成员; 通过setter方法修改被private封装的数据成员。 4、this的作用? 封装、继承和多态。 1、面向对象编程的三大特征? 通过封装类的数据成员和成员方法, 保证只有可信的类或者对象能 够访问这些方法和数据成员,对不可信的类或者对象进行信息隐藏。 (1)引用本类的数据成员和成员方法;(2)调用本类的构造方法; (3)表示当前对象,即当前对象的地址。 吉首大学软软件服务务外包学院 3.6 作业 1、定义动物Animal类,动物的属性有属种名称、动物昵称、年龄、肤 色和体重,行为有吃某种事物、在什么时间休息、在哪里玩耍等。要求(1 )所有的数据成员封装成私有成员;(2)有一个空构造方法,有属种名称 和动物昵称的构造方法,有属种名称、动物昵称、年龄、肤色和体重的构造 方法并该构造方法调用前面的构造方法;(3)写出所有数据成员的setter和 getter方法;(4)把动物的行为写出成员方法,并加入适当的参数;(5) 写printIn

温馨提示

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

评论

0/150

提交评论