1. 权限修饰符
- 分为访问权限修饰符和非访问权限修饰符两种
2. 访问权限修饰符
- 用来控制一个成员能够被访问的范围
- 可以修饰成员变量,方法,构造方法,内部类
3. 访问权限修饰符的分类
- 有四种作用范围,由小到大(private<空着不写/默认<protected<public)
- 如图:
- 实际开发中,一般只用private和public
a. 成员变量私有
b. 方法公开
c. 特例:如果一个方法的代码是抽取其他方法中的共性代码,且这个方法不想被外界使用,那么这个方法一般也私有
4. 代码块
- 在代码中,单独的加一对大括号,就叫代码块。如图:
- 根据代码块出现的位置不同,分为:
a. 局部代码块:代码块在方法里面,用来提前结束变量的作用范围。但目前已淘汰,现在计算机内存空间很大,没有必要为了几个变量而写局部代码块。
b. 构造代码块:代码在成员位置,用来把多个构造方法中重复的代码抽取出来,且在创建本类对象的时候会先执行构造代码块再执行构造方法,即优于构造方法执行。但也淘汰了,不够灵活,以下两种方式可以代替:
c. 静态代码块:在构造代码块的基础上,在{ 前加上static关键字。随着类的加载而加载,并且自动触发,且只执行一次,如图:
使用场景:在类加载的时候,做一些数据初始化,且只初始化一次(若不用静态代码块,直接写在方法里,则在每次调用方法时都会执行这段代码,这与预期不符)
5. 非访问权限修饰符
- static修饰符:用来修饰成员方法和成员变量
- final修饰符:用来修饰类,方法,变量
- abstract修饰符:用来修饰抽象类和抽象方法
- final可以修饰局部变量,访问权限修饰符不能修饰局部变量,static不能修饰局部变量