Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/333.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java Kotlin访问修饰符_Java_Kotlin - Fatal编程技术网

Java Kotlin访问修饰符

Java Kotlin访问修饰符,java,kotlin,Java,Kotlin,我正在尝试学习Kotlin,在访问修饰符方面遇到了困惑,与Java不同,Kotlin有私有、公共、内部和受保护的访问修饰符 那么内部和包是一样的吗?一个小例子: package A private fun foo() {} // visible inside example.kt public var bar: Int = 5 // property is visible everywhere private set // setter is visible only

我正在尝试学习Kotlin,在访问修饰符方面遇到了困惑,与Java不同,Kotlin有私有、公共、内部和受保护的访问修饰符

那么内部和包是一样的吗?一个小例子:

package A

private fun foo() {} // visible inside example.kt

public var bar: Int = 5 // property is visible everywhere
    private set         // setter is visible only in example.kt

internal val baz = 6 // visible inside the same module

在Java中,有包的概念,但在Kotlin中没有

在Java中,包意味着一组类似类型的类、接口和子包

与Java不同,Kotlin有一个模块的概念,根据Kotlin文档,模块的定义如下:

Kotlin中的模块 “内部可见性”修改器表示该成员在同一模块中可见。更具体地说,模块是一起编译的一组Kotlin文件:

  • 智能思维模块
  • Maven或Gradle项目
  • 通过一次Ant任务调用编译的一组文件

  • 谢谢你的回答。这是有道理的,但对来自java的人来说有些困惑。