# 封装的好处
提高代码的安全性,对于属性private,外界访问受限,通过定义方法进行额外限制条件的添加。一旦加上了权限修饰符,就不能随意访问。在方法中可以加入限制条件。setter,getter方法。
# 权限修饰符
| 权限修饰符 | 同一个类 | 同一个包 | 子类 | 所有类 |
| ---------- | -------- | -------- | ---- | ------ |
| private | * | | | |
| default | * | * | | |
| protected | * | * | * | |
| public | * | * | * | * |
# 方法重写
子类重写父类,方法的名称、顺序和参数要一样。
| | 重载 | 重写 |
| -------- | ---------- | ------------------------ |
| 位置 | 同一个类中 | 子类和父类 |
| 修饰符 | 无关 | 父类的权限低于子类 |
| 返回值 | 无关 | 父类的返回值类型大于子类 |
| 方法名 | 相同 | 相同 |
| 参数 | 必须不同 | 必须相同 |
| 抛出异常 | 无关 | 小于等于 |
| 方法体 | 不同 | 不同 |