Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/kotlin/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Kotlin-Java类中的静态get/set函数不被识别为属性_Java_Kotlin - Fatal编程技术网

Kotlin-Java类中的静态get/set函数不被识别为属性

Kotlin-Java类中的静态get/set函数不被识别为属性,java,kotlin,Java,Kotlin,考虑以下代码: java/com.example 公共类Foo{ 公共静态int getStaticProperty(){return 0;} 公共静态void setStaticProperty(int值){} public int getInstanceProperty(){return 0;} public void setInstanceProperty(int值){} } 从Kotlin访问Java类将实例get/set方法显示为属性,但静态get/set方法则不同;例如: kotl

考虑以下代码:

java/com.example

公共类Foo{
公共静态int getStaticProperty(){return 0;}
公共静态void setStaticProperty(int值){}
public int getInstanceProperty(){return 0;}
public void setInstanceProperty(int值){}
}
从Kotlin访问Java类将实例get/set方法显示为属性,但静态get/set方法则不同;例如:

kotlin/com.example

Foo.getStaticProperty()
Foo.setStaticProperty(123)
Foo.staticProperty=123//不起作用
val x=Foo()
x、 instanceProperty=123//可以工作

为什么Kotlin不能将静态get/set方法识别为属性?

答案很简单:Kotlin还不支持此功能


目前,只有实例方法支持将类Java访问器的方法转换为合成Kotlin属性。但是对于静态方法,还不支持此功能。您可以在本期中跟踪其状态:。

@Sergeyvasnov您的评论没有任何意义。至于这个问题本身,我不知道为什么它对你不起作用,它对我来说非常好。你使用的是什么版本的kotlin?@Alex.T kotlin 1.2这比我检查的版本稍微旧一些。我至少可以向您确认,它在版本
1.4.10
上运行良好。我不知道该功能是在
1.3
还是
1.4
中添加的。