我一直在相当密集地使用 Kotlin 而不是 Android。它确实让编程再次变得有趣。尽管如此,在某些情况下(主要是名称应该简短且方便的 util 类),当自动将 Java 转换为 Kotlin 时,我希望可以选择在静态方法上使用 @JvmStatic 而不是将调用者转换为MyClass.Companion.Bar
.
也就是说,在某些特定情况下,最好有
public static foo(Barian bar)
转换成
@JvmStatic
fun foo(bar:Barian)
所以我可以从 Java 中维护简短的调用语法:
MyClass.foo(bar)
而不是
MyClass.Companion.foo(bar)
显然,在大多数情况下,我同意这是不礼貌的做法,原因有很多,例如未来的兼容性、非 Kotlin 精神等等,但在少数情况下,它可以使 Java 代码(使用我的类)更短。