Java编程思想——day 6(访问权限控制)


Java编程思想——day 6

从现在开始,每天学习并记录。

2018/03/21


第六章 访问权限控制

访问权限修饰词:public、protected、包访问权限(没有关键字)、private

1、包:库单元

  1. 包内含有一组类,他们在单一的名字空间之下被组织在了一起。
  2. 例如:工具库被组织在java.until名字空间之下。ArrayList的类在其中,全名为:java.util.ArrayList
  3. 创建实例:java.util.ArrayList list = new java.until.ArrayList();
  4. 若想导入单个的类,可以在import语句中命名该类:import java.until.ArrayList;之后创建实例只需要使用语句ArrayList list = new ArrayList();即可。
  5. 想要导入所有的类:import java.until.*;
  6. java源代码文件被称为 “ 编译单元 ” 或 “ 转译单元 ” 。每个编译单元必须有一个后缀名.java,编译单元内可以有一个(不可有多个,最都一个)public类,该类的名称必须与文件的名称相同。
  7. .java文件编译后,在.java文件中的每个类都会有一个输出文件,输出文件名称与.java文件中的每个类的名称相同,只是多了一个后缀名.class。即:.java→编译→.class
  8. java可运行程序是一组可以打包并压缩为一个Java文档文件(JAR,使用Java的jar文档生成器)的.class文件。Java解释器负责这些文件的查找、装载和解释。
  9. 类库实际上是一组类文件
  10. package语句必须是文件中除注释以外的第一句程序代码:package access;,表示你在声明该编译单元是名为access的类库的一部分。
  11. 注意:Java包的命名规则全部使用小写字母,包括中间的字母。
  12. packetimport是将单一的全局名字空间分割开。
  13. packet名称的第一部分是类的创建者的反顺序的Internet域名(域名独一无二,因此packet名称也会独一无二)。
  14. packet名称分解为机器上的一个目录。
  15. ***Java解释器的运行过程:***1、找出环境变量CLASSPATH(可以通过操作系统开设置,有时也可以通过安装程序(用来在你的机器上安装Java或基于Java的工具)来设置)。CLASSPATH包含一个或多个目录,用作查找.class文件的根目录。从根目录开始,解释器获取包的名称并将每个句点替换成反斜杠,以从CLASSPATH根中产生一个路径名称。得到的路径会与CLASSPATH中的各个不同的项相连接,解释器就在这些目录中查找与你所要创建的类名称相关的.class文件。(解释器还会去查找某些涉及Java解释器所在位置的标准目录。)
  16. 包的名称一定要对应目录路径。

2、Java访问权限修饰词

  1. 包访问权限: 没有使用访问权限修饰词时,默认是包访问权限(有时也表示成friendly)。访问器(accessor)和变异器(mutator)方法也成为get/set方法可以读取和改变数值。
  2. public:接口访问权限;
  3. private:你无法访问;
  4. protected:继承访问权限。

3、接口的实现

  1. 访问权限的控制,通常被称为具体实现的隐藏
  2. 把数据和方法包装进类中,以及具体实现的隐藏,常共同被称作封装
  3. 类浏览器是一种以非常有用的方式来查阅所有可用的类,并告诉你用它们可以做些什么(也就是显示出可用成员)的工具。
  4. 在Java中,用Web浏览器浏览JDK文档可以得到使用类浏览器的相同的效果。

4、类的访问权限

  1. 限制:
    1.1 每个编译单元(文件)都只能有一个public类。这表示,每个编译单元都有单一的公共接口,用public类来表现。该接口可以按要求包含众多的支持包访问权限的类;
    1.2 public类的名称必须完全.与含有该编译单元的文件名相匹配,包括大小写;
    1.3 虽然不是很常用,但编译单元内完全不带public类也是可能的。
  2. 类的访问权限只可以是public或protected。如果不希望有其他人对该类拥有访问权限,则可以将所有的构造器都指定为private,从而阻止任何人创建该类的对象。但是有一个例外,就是你在该类的static成员内部可以创建。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值