一、包
包就是文件夹。用来管理各种不同功能的Java类,方便后期代码维护
包名的规则:公司域名反写+包的作用,需要全部英文小写,见名知意。
使用其他类的规则:使用其他类时,需要使用全类名(包名+类名)。
- 使用同一个包中的类时,不需要导包
- 使用java.lang包中的类时,不需要导包
- 其他情况都需要导包
- 如果同时使用两个包中的同名类,需要使用全类名
二、final
final可以修饰方法,类,变量
当final修饰方法,类,变量时
方法 | 表明该方法是最终方法,不能被重写 |
类 | 表明该类是最终类,不能被继承 |
变量 | 叫做常量,只能被赋值一次 |
常量
常量的命名规范:
- 单个单词:全部大写
- 多个单词:全部大写,单词之间用下划线隔开
final修饰的变量是基本类型:变量存储的数据值不能发生改变
final修饰的变量是引用类型:变量存储的地址值不能发生改变,对象内部的可以改变
权限修饰符
- 权限修饰符:是用来控制一个成员能够被访问的范围的。
- 可以修饰成员变量,方法,构造方法,内部类。
权限修饰符的分类
有四种作用范围由小到大(private<空着不写(缺省/默认)<protected<public)
修饰符 | 同一个类中 | 同一个包中其他类 | 不同包下的子类 | 不同包下的无关类 |
private | 1 | 0 | 0 | 0 |
空 | 1 | 1 | 0 | 0 |
protected | 1 | 1 | 1 | 0 |
public | 1 | 1 | 1 | 1 |
权限修饰符的使用规则
实际开发中,一般只用private 和 public
- 成员变量公开
- 方法公开
特例:如果方法中的代码是抽取其他方法中共性代码,这个方法一般也私有
代码块
- 局部代码块:作用:提前结束代码块的周期(淘汰)
- 构造代码块(写在成员位置的代码块,当创建本类对象时,它优先于构造方法执行,可以将多个构造方法中重复的代码写在构造代码块中(缺点:不够灵活))
- 静态代码块:作用:数据初始化
静态代码块:
格式:static{}
特点:需要通过static关键字修饰,随着类的加载而加载,并且自动触发、只执行一次
使用场景:在类的加载的时候,做一些数据初始化的时候使用