假设您正在编写Android项目(不是库)。所有文件都汇编在一起所以...在这种情况下使用internal
可见性修饰符是否有意义?
答案 0 :(得分:24)
您可以在一个Android应用程序中拥有多个彼此依赖的Gradle模块,在这种情况下,internal
会限制给定模块中的可见性。例如,如果您有一个单独的data
模块来处理数据库和网络任务,并且您只想从该模块公开一些接口,而不是它们的实现,那么这可能很有用。
否则,如果您没有使用多个模块,并且整个应用程序只在默认的app
模块中,那么internal
修饰符与默认public
相比没有区别能见度。
答案 1 :(得分:4)
不,因为你只有一个模块。看看定义。
内部可见性修饰符表示该成员可见 在同一个模块中。更具体地说,模块是一组Kotlin 一起编译的文件:
- IntelliJ IDEA模块;
- Maven项目; Gradle源集;
- 通过一次Ant任务调用编译的一组文件。
(Source)
internal
仅对多个模块有效。