vendredi 22 février 2019

how to call kotlin companion factory method using callBy()

I have code accepts a class as a parameter and prepares and prepares data to call either the constructor for that class of a companion object factory method if the factory method is present.

All works fine when calling the constructor, but I get the error

java.lang.IllegalArgumentException: No argument provided for a required parameter: instance of fun nz.salect.objjson.JVMTest.StudentWithFactory.Companion.fromJson(kotlin.String, kotlin.Int): nz.salect.objjson.JVMTest.StudentWithFactory

when calling the factory method. The factory method in question:

data class StudentWithFactory(val name: String, val years: Int=0) {

    companion object {

        fun fromJson(name: String="", age: Int = 0):StudentWithFactory {
            return StudentWithFactory(name, age)
        }
    }
}

has no required parameters, unless there is some hidden parameter. Any ideas?





Aucun commentaire:

Enregistrer un commentaire