Android Studio转换为Kotlin:在某些情况下使用@JvmStatic

我一直在Android上使用Kotlin相当集中。 这确实使编程乐趣了。 尽管如此,在某些情况下(主要是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代码(使用我的类)更短。

One Solution collect form web for “Android Studio转换为Kotlin:在某些情况下使用@JvmStatic”

当你像这样去除你的“静态”方法时,你不需要明确指定Companion-namespace:

 class MyClass { companion object { fun foo() {} } } 

在这种情况下,您仍然可以通过以下方式呼叫

 MyClass.foo() 

但是,静态方法不是一个科特林式的方法,应该避免使用这种语言的其他特性。

  • Android Studio 3 Kotlin版本
  • 未解决的参考:kotlinx
  • 错误:链接引用失败。 - > QueuedJob
  • 如何用JSON API支架列表制作KOTLIN列表
  • 选项+进入快速修复不工作在最新的Android工作室
  • 在Android的Kotlin的帮助下开始一个项目
  • Kotlin:由于textView,Android应用程序意外停止
  • 文档模板生成kotlin
  • 如何在Android上使用Kotlin在BottomNavigationView上设置OnNavigationItemListener?
  • Android kotlin扩展错误
  • 在Android studio-Kotlin错误中创建一个新项目
  • Kotlin language will be the best programming language for Android.