kotlin修饰符

kotlin中有四种修饰符:

  • public
  • private
  • protected
  • inernal
    函数,属性和类,对象,接口 可以在“top level”中声明,可以直接属于包
//info.kt
package example

fun more() {
    print("more")
}

class info() {}
package example

class Test() {
    fun out() {
        example.more()
    }

    fun main(args: Array) {
        out()
    }
}

more方法定义在info.kt的最外层即 top_level中,属于包权限方法

在example包下的Test类中,可以直接通过包名调用more方法

  • 如果没有指定任何可见性修饰词,默认使用public,说明声明在任何地方都可见。
  • 如果声明为private,则只在包含声明的文件中可见。
  • 如果用internal声明,则在同一个module中的任何地方中可见
  • protected在top-level中不可以使用

类和接口

如果覆写一个protected的成员但是没有指定可见性,那么该复写的成员具有protected的可见性

外部类不可以访问内部类的private成员

构造函数

指定构造函数的可见性

class Test private constructor() {}

模块

可见性修饰符internal意味着该成员只在相同的模块内可见

一个模块是编译在一起的一套kotlin文件

你可能感兴趣的:(kotlin修饰符)