Android中的Kotlin“内部”​​可见性修饰符

时间:2017-12-20 09:27:18

标签: android kotlin

假设您正在编写Android项目(不是库)。所有文件都汇编在一起所以...在这种情况下使用internal可见性修饰符是否有意义?

2 个答案:

答案 0 :(得分:24)

您可以在一个Android应用程序中拥有多个彼此依赖的Gradle模块,在这种情况下,internal会限制给定模块中的可见性。例如,如果您有一个单独的data模块来处理数据库和网络任务,并且您只想从该模块公开一些接口,而不是它们的实现,那么这可能很有用。

否则,如果您没有使用多个模块,并且整个应用程序只在默认的app模块中,那么internal修饰符与默认public相比没有区别能见度。

答案 1 :(得分:4)

不,因为你只有一个模块。看看定义。

  

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

     
      
  • IntelliJ IDEA模块;
  •   
  • Maven项目; Gradle源集;
  •   
  • 通过一次Ant任务调用编译的一组文件。
  •   
     

Source

internal仅对多个模块有效。