Java 用于json的kotlin-klaxon库

Java 用于json的kotlin-klaxon库,java,json,kotlin,klaxon,Java,Json,Kotlin,Klaxon,我是科特林的新手,我认为学习东西的最好方法就是开始使用它(所以这个问题更多地和语言有关,而不是和克拉克森图书馆有关)。我试图理解klaxon()的git页面的第一个片段。 这是: fun parse(name: String) : Any? { val cls = Parser::class.java return cls.getResourceAsStream(name)?.let { inputStream -> return Parser().pars

我是科特林的新手,我认为学习东西的最好方法就是开始使用它(所以这个问题更多地和语言有关,而不是和克拉克森图书馆有关)。我试图理解klaxon()的git页面的第一个片段。 这是:

fun parse(name: String) : Any? {
    val cls = Parser::class.java
    return cls.getResourceAsStream(name)?.let { inputStream ->
        return Parser().parse(inputStream)
    }
}
我不明白为什么在第一种情况下我们会这样做

解析器::class.java

然后调用getResource。。。 但你只要打电话就行了

Parser().parse

在第二种情况下。有什么区别,为什么会这样


p.S抱歉英语不好=)

好的,我刚想好,我们需要::class.java,因为getResourceAsStream是java.lang.class函数。parse是Parser类的一个成员函数。

嗨,Yarick,我制作了parse函数的简易版本。我在这里做什么。我将json api请求响应解析为函数中的字符串,然后创建解析并将其作为JsonObject返回

注意:使用stringbuilder创建可变字符串。

// Json Parsing Object
        fun parse(name: String): JsonObject {
            val parser = Parser()
            val stringBuilder: StringBuilder = StringBuilder(name)
            val json: JsonObject = parser.parse(stringBuilder) as JsonObject
            return json
        }

我建议你先去看看。这个函数告诉您
::class
的意思以及
.java
是什么。