Kotlin新手求教:如何正确组织Model类?能否同文件存放所有Model类?
关于Kotlin中多个Data Class放在同一文件的问题
嘿,作为Kotlin新手能快速上手data class的用法,还主动思考代码组织的问题,这点超棒!
答案是完全可以把所有Model类(也就是你说的data class)都声明在同一个文件里,这在Kotlin里是完全合法且常见的操作。
为什么可行?
Kotlin不像Java那样强制要求一个类对应一个文件(Java的顶级public类必须和文件名一致)。Kotlin的顶级类默认是包级可见的,所以你可以在同一个文件里定义任意多个顶级类,包括data class。
实际示例
你给出的写法完全没问题,格式化后是这样的:
data class AModel(var title: String, var body: String) data class BModel(var title: String, var body: String) data class CModel(var title: String)
一些实用建议
虽然这么做可行,但还是要根据实际场景权衡:
- 如果这些data class属于同一个业务模块(比如都是和文章相关的模型:文章、评论、作者),放在同一个文件里能让代码结构更紧凑,方便快速查找关联类。
- 如果文件里的类太多(比如超过5-6个),或者各个类之间关联性很弱,那拆分到不同文件会让代码更易维护,可读性更高。
总之,只要逻辑上合理,怎么组织文件都可以,Kotlin给了你很大的灵活性~
内容的提问来源于stack exchange,提问作者Mạnh Hoàng Huynh
相关产品推荐
相关产品推荐

