科特琳(Kotlin)会生成类似这样的内容
@JvmStatic
fun newInstance(param1: String, param2: String) =
MyFragment().apply {
arguments = Bundle().apply {
putString(ARG_PARAM1, param1)
putString(ARG_PARAM2, param2)
}
}
@JvmStatic是什么?
我们可以做类似的事情:
fun getInstance() = MyFragment()
和此功能相同(参数除外)
@JvmStatic没用吗?
答案 0 :(得分:2)
对于Kotlin而言,这“无关紧要”,但是如果您是从Java使用它,那么它将被“转换”为静态方法。在kotlin中没有等效的静态方法,因此这是一种告诉JVM从Java使用时将转换为静态方法的方法。
来自docs:
指定需要从中生成其他静态方法 该元素是否为函数。