第六章 访问权限控制

第六章 访问权限控制

包(package)

包的概念

包在概念上类似于c/c++中的name space的概念,主要是一种代码组织的结构.其主要作用是
避免在大型工程开发时,由于参与人员过多,所导致的命名冲突情况的发生.同时包这种代码
组织形式也生成了java的一种权限管理方式.

定义包的方式

通过package语句定义包,且该语句必须是文件中除注释语句外的第一行.

package packagename;

包的命名规则

反序书写包开发者的Internet域名: net.visiontech.kj.xxx;

包的使用

使用包时,在文件开头部分通过import语句来对包进行引用.这里要注意对于CLASSPATH环境
变量的设置,否则很可能找不到相应的定义.其查找方式是将CLASSPATH作为搜索的根目录,例
如CLASSPATH = /tmp.然后Java解释器就会去寻找/tmp/net/visiontech/kj/目录下有没有具
体的类名称.(若想使用本工程下的包,记得在CLASSPATH中加入 “.” 即当前目录标识符)

默认包

当文件没有将自己包含在任何包的情况下,Java会将此种文件自动的看做隶属于该目录(文件
所在目录)的默认包中.

各种访问权限(非常重要,进行深刻理解)

  1. 包访问权限

    • 类以及类内的各个成员没有进行明确的权限声明时,将自动赋予包访问权限.即该处于相
      同包内的各个类之前可以互相访问彼此的类成员函数,类成员变量.但包外的类无法对
      具有包访问权限的成员变量,成员函数进行访问.
    • 默认包遵循上述规则.
  2. public权限

    • 使用关键字public修饰的成员具有public权限,即所有public成员是可以被任何人所使
      用的.可以把被public修饰的成员认为是该类对外的公共接口,是与外部进行交互的重
      要通道.
  3. protected权限

    • 使用关键字protected修饰的成员具有protected权限.该权限主要是运用于类的集成上,
      基类的成员若具有protected权限,则集成类可以使用该protected权限.同时
      ,protected也提供包访问权限,也就是说相同包内的其他类可以访问protected成员.
  4. private权限

    • 使用关键字private修饰的成员具有private权限.具有该权限的成员除了包含该成员的
      类外,其他任何类都无法对其进行访问(包括同一个包内的其他类).该权限是进行实现
      与接口分离的一个重要途径.例:private构造函数可以控制如何创建对象,单例模式就
      是一个比较好的例子.
  5. 权限修饰词与类

    • 对于类的访问权限只有两种访问权限:包访问权限与public权限
    • 若一个类希望被其他人使用,则对该来使用public修饰词,其余情况下使用包访问权限(
      即无修饰词)
    • 每一个编译单元(文件)都只能有一个public类,且该类的名称必须与包含该类的编译单
      元(文件)的名称完全一致(包括大小写)
    • 若编译单元(文件)内不存在public类,则该编译单元可以进行任意命名(不常用)
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值