Java中的这些关键字都是用来说明当前变量 、方法的访问权限(访问控制符)
类内部 | 本包 | 子类 | 外部包 |
---|---|---|---|
public | ✔ | ✔ | ✔ |
protected | ✔ | ✔ | ✔ |
default/friendly | ✔ | ✔ | ✖ |
private | ✔ | ✖ | ✖ |
public
- public具有最大的访问权限,它往往用于对外的情况,是对象或类对外的一种接口的形式
- 一个.Java中只能有一个public类
default
- 没有说明访问控制符时,默认的缺省类型为default(friendly)
protected
-由于其对子类开放的特性,在通常情况下,如果使用protected来修饰一个方法,是希望其子类来重写这个方法
private
- 只能在这个类的内部访问
- 限制类而非对象,比如可以在针对一个对象的方法中去访问另一个同一类的对象的private属性/方法
- 子类不可见也无法重写
final
类似C语言中的const,final:最终的,最后的
final修饰的方法不可被重写,注意不可被重写,但可以重载
final修饰的变量成为常量,对修改关闭
final修饰的类不可被继承(扩展)