函数,属性和类,对象和接口可以在 “top-level” 声明,即可以直接属于包:

    例子:

    private 只在该类(以及它的成员)中可见

    protectedprivate 一样但在子类中也可见

    在本模块的所有可以访问到声明区域的均可以访问该类的所有 internal 成员 ( internal — any client inside this module who sees the declaring class sees its internal members;)

    public 任何地方可见 (public — any client who sees the declaring class sees its public members.)

    java 使用者注意:外部类不可以访问内部类的 private 成员。

    如果你复写了一个protected成员并且没有指定可见性,那么该复写的成员具有protected可见性

    通过下面的语法来指定主构造函数(必须显示的使用 constructor 关键字)的可见性:

    这里构造函数是 private 。所有的构造函数默认是 public ,实际上只要类是可见的它们就是可见的
    (注意 类型的类中的 public 属性只能在同一个模块内才可以访问)

    局部变量,函数和类是不允许使用修饰词的

    internal 修饰符是指成员的可见性是只在同一个模块中才可见的。模块在 Kotlin 中就是一系列的 Kotlin 文件编译在一起:

    — an IntelliJ IDEA module;

    — a Maven or Gradle project;