针对Kotlin文件的IntelliJ和Android Studio图标

我一直在试图理解什么IntelliJ(和Android Studio)正在做我的Kotlin文件图标。 在图片中,您可以看到Kotlin文件带有两个不同的图标 – 一个带有小“K”的矩形或带有小“K”的圆圈C(图中红圈)。 矩形版本还包含一个有用的“.kt”后缀。

在对这个问题的黑盒子进行了一些修改之后,看起来如果kotlin文件只是声明了一个与文件名匹配的类,那么它就会得到一个“圈出来的C”图标。 但是,如果它执行的任何类似于非Java的任何操作(如在类之外声明一个变量(例如val foo = 42 )),则图标将移至具有“K”的矩形。 这里的图标文档表明,IntelliJ认为具有“K”的矩形是“Kotlin文件”,而圈出的C是“Kotlin类”。

有人知道这是否有更深的含义? 我想我会在课堂外加入一个val声明来让我的Kotlin文件图标符号全部匹配。 然后他们也将有方便的“.kt”扩展名,以清楚地表明他们是Kotlin文件。

例如 – 这里是代码,将文件Foo.kt中您的图标更改为一个“K”的矩形:

 val bar = 42; class Foo {} 

在这里输入图像描述

你的分析是正确的。 如果文件只定义了一个类,那么项目视图节点将显示该类,而不是整个文件。 如果文件中有多个声明,那么项目视图节点将显示一个文件图标。

类图标看起来是为了与混合语言项目中的Java类图标保持一致。