Java编程思想第六章访问权限控制.pptVIP

  1. 1、本文档共31页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
Java编程思想第六章访问权限控制.ppt

第六章 访问权限控制 ★ 包(Package) ★ 成员的访问权限控制 ★ 类的访问权限控制 一、序言 1、 为什么要使用访问权限控制? ★ 程序存在重构的可能和必要,但是类的 消费者却希望你的代码保持不变 ◆ 利用封装和访问权限控制来解决该矛盾, 保证接口的声明和接口的功能保持不变 一、序言 2、 访问权限的等级有:public、 private、 protected和包访问权限 ★ 访问权限控制的第一基本原则: 尽可能 将一切数据和方法设为private, 而允许 类的消费者访问和使用的方法设为public 二、包:库单元 1、 问题:在Java环境中存在大量的类, 如何管理好这些类而避免冲突? ★ 发生冲突的一个典例: ★ import net.mindview.simple.*; //自定义类库 import java.util.*;// Java标准类库 ◆ 假设:两个类库都有一个叫Vector的类, 那么下面的代码将导致冲突: Vector v= new Vector(); ◆ 因为编译器不知道到底应该调用哪个Vector类 ★ 仔细分析:其实在操作系统中也存在着同样问题 ◆ 操作系统采用目录结构(文件夹)来组织和管理 文件,各种文件被分门别类地存放在不同的目录 ◆ 类似的,Java采用包(Package)来组织和管理类 // 从实验效果来看,包就是文件夹 ◆ 问题:以前的例子怎么没有包?(默认包) 二、包:库单元 2、 代码组织 ⑴ 每个Java文件都有一个public类(主类) 以及若干个非public类(辅助类) ★ 当编译Java文件时,每个类都会有一个 输出文件(.class文件) 二、包:库单元 ⑵ 类库(Class Library) ★ 由若干个Java文件和更多的.class文件 组成 ◆ 若我们希望这些文件同属于一个群组, 就得使用包 二、包:库单元 ⑶ 包(Package)的定义 ★ package 包名; ◆ 注意:包的定义必须是文件中除注释 以外的第一条语句 二、包:库单元 ⑷ 包中的类的使用方法 ★ 要么使用全名 ★ 要么使用import关键字载入 二、包:库单元 3、 创建独一无二的包名 ⑴ 包名由以下两部分组成 ★ 类创建者的反顺序internet域名 ★ 包所在计算机的目录名称 ★ internet域名是独一无二的,因此你的包名的 第一部分也应该是独一无二的 ◆ 典例:本文作者的域名为mindview.net 反顺序以后变成:net.mindview ◆ 这是一劳永逸的解决方案,否则如果缺少第一 部分, 你在自己的计算机编写的Java程序没有 问题,但拿出去发布时就有可能冲突 二、包:库单元 ⑵ Java编译器的运行过程 ① 首先,找出环境变量CLASSPATH ★ CLASSPATH包含一个多个目录,用作 查找.class文件的根目录 ★ 典型的CLASSPATH ◆ C:\.; C:\Program Files\Java\jdk1.6.0_10\LIB; C:\Program Files\Java\jdk1.6.0_10\DT.JAR; C:\Program Files\Java\jdk1.6.0_10\TOOLS.JAR; 二、包:库单元 ② 其次,编译器利用CLASSPATH根目录 加上包名称产生一个完整路径名称 ★ Java的策略也很简单:将包名称的每个 句点替换为反斜杠 ◆ 典例:foo.bar.baz变换为foo\bar\baz 二、包:库单元 ③ 此外,编译器还会去查找一些涉及Java 编译器所在位置的标准目录 ★ 比如:安装目录\bin或安装目录\lib ★ 典例(P112~113): ◆ 文件1(Vector.java文件): packa

文档评论(0)

sis_lxf + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档