美文网首页
Day07 可见性修饰符

Day07 可见性修饰符

作者: 鹅鹅鹅曲项向天歌呀 | 来源:发表于2019-04-20 11:17 被阅读0次

    1、 public
    2、protected
    3、private
    4、internal

    在Kotlin中,不管是类,对象,接口,构造函数,函数,属性及其设置器都具有可见性修饰符。Kotlin中的可见性修饰符共四种。即public、protected、private、internal。

    public 修饰符表示 公有 。此修饰符的范围最大。当不声明任何修饰符时,系统会 默认 使

    图3.png
    用此修饰符。
    internal 修饰符表示 模块 。
    protected 修饰符表示 私有+子类。值得注意的是,此修饰符不能用于顶层声明。
    private 修饰符表示 私有 。此修饰符的范围最小,即可见性范围最低。

    在同一个文件中声明不同的修饰符的范围

    图1.png
    在不同文件中声明不同的修饰符的范围
    图2.png
    总结:
    1、演示了在顶层声明方法的情况,不过声明其他的也是一样的。
    2、在顶层情况下声明的变量、方法、类、接口等,不能使用protected修饰符。
    3、public修饰符可省略,因为它是系统默认的。
    4、在同一文件下,用任意修饰符都可以访问,当然此处除开protected修饰符。
    5、在不同文件下,只能访问public、internal修饰符修饰的变量、方法等。、

    在类(class)和接口(interface)中声明的情况

    图3.png

    接口中声明的属性

    图4.png
    总结:
    1、在类中声明属性、方法等,可以使用任意修饰符修饰。并且在类中的任意位置都能访问各个修饰符修饰的属性、方法等。
    2、在类外,只能访问由public、internal修饰符修饰的属性、方法。此情况不管是不是在同一个文件中去操作。
    3、在接口中声明的情况下,只能由public修饰符修饰属性。方法可由public、private两个修饰符去修饰,但是,用private修饰符修饰符修饰的方法不能被实现该接口的类重写。
    4、为了使用接口中由public修饰符修饰的属性、方法等。只能定义一个类去实现该接口,然后重写其属性、方法。这样就能在可在类中或类外去操作。

    在构造函数中声明的情况

    图5.png
    局部声明的情况
    图6.png

    ----------------------------THE END-------------------------

    相关文章

      网友评论

          本文标题:Day07 可见性修饰符

          本文链接:https://www.haomeiwen.com/subject/zjsfiqtx.html