Kotlin可见性修饰符分为:

  • public
  • internal
  • protected
  • private

特殊的:

  • open
  • final
  • constructor
  • override
  • init
  • abstract
public:公开(默认状态)
  1. 文件夹内可见
  2. class内可见
  3. 子类可见
  4. 不考虑是否一个moudle内。
  5. 包内可见
internal:内部(之考虑moudle)
  1. 文件夹内可见
  2. class内可见
  3. 同模块子类可见,不同模块不可见
  4. moudle(模块)内部可见,moudle之间不可见。
  5. 包内可见
protected:保护(只考虑继承)
  1. 文件夹内不可见
  2. class内可见
  3. 子类可见
  4. 不考虑是否一个moudle内。
  5. 不可用在包层级
private:私有(只考虑包文件)
  1. 文件夹内不可见
  2. class内可见
  3. 子类不可见
  4. 不考虑是否一个moudle内。
  5. 修饰包层级的时候包内可见,修饰class内部的时候class内可见。
open:

决定类是否可以继承、方法/变量 是否可以重写。

final:

默认修饰符,与open冲突。修饰的类不可继承、修饰的方法/变量不可重写。

constructor:

构造方法专用。

init:

主构造方法没有方法体,在此方法中写逻辑。

override:

重写方法/变量必须用。

abstract:

修饰抽象类,修饰子类需要重写的方法。

Logo

开源鸿蒙跨平台开发社区汇聚开发者与厂商,共建“一次开发,多端部署”的开源生态,致力于降低跨端开发门槛,推动万物智联创新。

更多推荐