Java权限修饰符:
| 权限修饰符 | 同一个类 | 同一个包 | 非同一个包 子类 | 非同一个包 非子类 |
| public | 是 | 是 | 是 | 是 |
| protected | 是 | 是 | 是 | 否 |
| 默认 | 是 | 是 | 否 | 否 |
| private | 是 | 否 | 否 | 否 |
kotlin权限修饰符:
kotlin类默认是final 修饰 不可 被继承,如需被继承需要用 open修饰
top-level:定义在一个文件中,class外面 和导包的代码处于同一级别
| 权限修饰符 | 类成员 | top-level |
|---|---|---|
| public | 所有地方可见 | 所有地方可见 |
| internal | 模块中可见 | 模块中可见 |
| protected | 子类中可见 | X |
| private | 类中可见 | 文件中可见 |