7.4 Kotlin 可见性修饰符

Kotlin中的可见性修饰符是用于限制应用程序中的类,接口,方法和属性使用的关键字,可见性修饰符分为四种不同的类型: 公共,私有,受保护和内部,也就是public、protected、internal、private。

public 修饰符

注意:

  • 可以从项目的任何位置访问public修饰符。
  • 它是Kotlin中的默认修饰符。
  • public 可以省略。
public class Persion() {
    public var name: String = "zhangsan"

    public fun obtainName(): String {
        return name
    }
}

val a = 1
val b = 2

fun main(args: Array<String>) {
    Persion()
    a + b
}

protected 修饰符

protected虽然可以被外界看到,但外界却不能调用,只有自己及自己的子类可以调用(protected的属性和方法都可以被子类所继承和调用)。

class Persion() {
    protected var name: String = "zhangsan"

    fun obtainName(): String {
        return name
    }
}


fun main(args: Array<String>) {
    Persion.name //错误,Persion类外无法获取
    Persion().obtainName()
}

internal修饰符

internal 修饰类的方法,表示这个类方法只适合当前module使用,如果其他module使用的话,会找不到这个internal方法或者报错。

class Persion() {
    internal var name: String = "zhangsan"

    fun obtainName(): String {
        return name
    }
}

class studeng() {
    fun test() {
        Persion().name   //同意moudle 可以获取
    }
}

private修饰符

private是完全私有的,只有在类自己里面可以调用,在类的外部和子类都不能调用,子类也不能继承父类的private的属性和方法。

class Persion() {
    private var name: String = "zhangsan"

    fun obtainName(): String {
        return name
    }
}

fun main(args: Array<String>) {
    Persion().name //错误,Persion类外无法获取
}
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

友情链接更多精彩内容