OnJava8笔记2 -- 封装——各种访问权限

封装——各种访问权限

为什么会有访问权限

访问权限对于类库开发人员很重要,有的时候客户端开发人员不希望类库被改变,所以需要访问权限来缩小客户端开发人员的控制范围,这样就能保证接口不会随着更新而变化,虽然内部代码改变了,但客户端开发人员使用类库的过程没有变化。

  • 一个编译单元(.java文件)只能有一个public类,若一个编译单元中还有其他类,这个类在包之外是无法被访问的,同包下的其他编译单元可以访问这个类

  • 一个编译单元被编译后,其中的class可以分别生成各自的 .class 文件。jar包就是这些 class 文件的集合

访问权限修饰符

  • 访问权限修饰符包括:public private protected 和 默认访问权限(无修饰符,被称为包访问权限)

包访问权限

  • 只有在同一个包中,才有权利访问

public

  • 任何地方都能访问

private

  • 只能在同一个类中访问 private 修饰的成员

protected: 继承访问权限

  • 同一个包中,可以被访问
  • 不在同一个包中,只有继承了父类的类中才能使用父类的 protected 成员 (这也是与包访问权限的区别)

你可能感兴趣的:(OnJava8笔记2 -- 封装——各种访问权限)