Java编程思想 访问权限控制总结

访问控制(或隐藏具体实现)与 最初的实现并不恰当 有关

包:库单元
包内包含有一组类 它们在单一的名字空间之下被组织在了一起
使用包中类 可以使用全名来指定 或者import关键字 要想导入包中所有的类 只需要使用 *
一个Java编译单元中 只可以有一个public类 并且名称要与文件的名称相同(包括大小写)

代码组织
当编译一个.java文件时 在.java文件中的每个类都会有一个输出文件 而该输出文件的名称与.java文件中每个类的名称相同 只是多了一个后缀名.class
类库实际上是一组类文件 每个文件都有一个构件 如果希望这些构件从属于同一个群组 可以使用关键字package
package和import关键字允许你做的 是将单一的全局名字空间分割开 使得无论多少人使用Internet以及Java开始编写类 都不会出现名称冲突问题

创建独一无二的包名
可以通过类的创建者的反顺序的Internet域名来创建独一无二的package名称
冲突
在使用了有冲突名字的情况下 必须返回到指定全名的方式

定制工具类
可以创建自己的工具库来减少或消除重复的程序代码

用import改变行为
可以通过修改被导入的package的方法来产生不同的行为

对使用包的忠告
无论何时创建包 都已经在给定包的名称的时候隐含地指定了目录结构

Java访问权限修饰词

包访问权限
默认访问权限没有任何关键字 但通常是指包访问权限(有时也表示成为friendly) 这就意味着当前的包中的所有其他类对那个成员都有访问权限 但对于这个包之外的所有类 这个成员却是private

public:接口访问权限
使用关键字public 就意味着public之后紧跟着的成员声明自己对每个人都是可用的

默认包
如果两个.java文件处于相同的目录并且没有给自己设定任何包名称 Java将这样的文件自动看作是隶属于该目录的默认包之中 于是它们为该目录中所有其他的文件都提供了包访问权限

private:你无法访问
关键字private的意思是 除了包含该成员的类之外 其他任何类都无法访问这个成员

protected:继承访问权限
如果创建了一个新包 并自另一个包中继承类 protected也提供包访问权限 也就是说 相同包内的其他类可以访问protected元素

接口和实现
访问权限的控制常被称为是具体实现的隐藏 把数据和方法包装进类中 以及具体实现的隐藏 常共同被称作是封装 其结果是一个同时带有特征和行为的数据类型

类的访问权限
类既不可以是private的 也不可以是protected 所以对于类的访问权限 仅有两个选择:包访问权限或public 如果不希望其他任何人对该类拥有访问权限 可以把所有的构造器都指定为private 从而阻止任何人创建该类的对象 但是有一个例外 就是你在该类的static成员内部可以创建
在这里插入图片描述

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值