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
Java Kotlin:使用GSON“;类声明多个名为“field”的JSON字段;在扩展类型时_Java_Kotlin_Gson - Fatal编程技术网

Java Kotlin:使用GSON“;类声明多个名为“field”的JSON字段;在扩展类型时

Java Kotlin:使用GSON“;类声明多个名为“field”的JSON字段;在扩展类型时,java,kotlin,gson,Java,Kotlin,Gson,我得到一个错误,说category声明了多个名为name的JSON字段,这是设置 class Categories(context: Context): JsonData() { override lateinit var data: MutableList<Category> class Category( override var name: String ):Entry(name) } 这似乎是错误的,这是预期的方法。我还能做些什么使

我得到一个错误,说
category声明了多个名为name的JSON字段
,这是设置

class Categories(context: Context): JsonData() {
    override lateinit var data: MutableList<Category>

    class Category(
        override var name: String
    ):Entry(name)
}

这似乎是错误的,这是预期的方法。我还能做些什么使代码更整洁吗?

您是否尝试过
类类别(名称:String):条目(名称)
?@LouisWasserman有效。当重写字段时,您不需要在KOTLIN中使用VAL/VAL或重写关键字吗?考虑下面的java:Cux>类Foo{私有最终字符串FO;Foo(String Fo){THES.Fo= Fo};} /Cux> <代码>类Sufo扩展Fo{{Sufo(Strand Fo){Sufo(FoO);}}/<代码>,在此情况下,您只接受它作为构造函数参数,并将其传递给超类构造函数,而没有新字段。您是否尝试过
类类别(名称:String):条目(名称)
?@LouisWasserman,这很有效。当重写字段时,您不需要在KOTLIN中使用VAL/VAL或重写关键字吗?考虑下面的java:Cux>类Foo{私有最终字符串FO;Foo(String Fo){THES.Fo= Fo};} /Cux> <代码>类Sufo扩展Fo{{Sufo(Strand Fo){Sufo(FoO);}}/<代码>,在此情况下,您只接受它作为构造函数参数并将其传递给超类构造函数,而没有新字段。
abstract class JsonData {
    abstract val data: MutableList<out Entry>

    abstract class Entry(open var name: String)
}
abstract class Entry(@SerializedName("kotlindumbdumb") open var name: String)