刚开始使用Kotlin并创建了一些活动作为Kotlin文件。他们工作,但我仍然想知道创建文件和类之间的区别。
唯一的区别是创建文件会创建一个没有类的文件,创建一个类会创建一个包含一个类的文件。然后,您可以向该文件添加更多类,或删除类,或进行任何其他更改 - 最终结果不依赖于文件的创建方式。
我可以看到Kotlin文件里面有很多类但是Kotlin类有一个具有该名称的类,但这只是一个观察。
是的,如果您定义了多个类,它将自动转换为文件,否则它将自动转换为类。通常我认为如果你需要定义一些可以直接引用的变量或方法,你可以把它们放在文件中。
以下是官方Documentation的答案:
如果Kotlin文件包含单个类(可能具有相关的顶级声明),则其名称应与类的名称相同,并附加.kt扩展名。如果文件包含多个类或仅包含顶级声明,请选择描述文件所包含内容的名称,并相应地命名该文件。使用带有大写首字母的驼峰(例如ProcessDeclarations.kt)。
文件名应该描述文件中的代码。因此,您应该避免在文件名中使用无意义的单词,例如“Util”。
所以基本上一个文件可以 - 例如 - 包含只有(辅助)函数而没有任何类声明。