json的kotlin klaxon库

我是新来的kotlin,并决定最好的方式来学习的东西是开始使用它(所以问题更多的语言,而不是对克拉松库)。 我试图理解从glax页面( https://github.com/cbeust/klaxon )的第一个片段。 这里是:

fun parse(name: String) : Any? { val cls = Parser::class.java return cls.getResourceAsStream(name)?.let { inputStream -> return Parser().parse(inputStream) } } 

我不明白为什么在第一种情况下,我们做

分析器:: class.java

然后调用getResource …但是然后调用

分析器()。解析

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

PS对不起,英文=)

你好Yarick我做了简单的解析函数的版本。 我在这里做什么 我解析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,因为getResourceAsStream是java.lang.Class函数。 而解析是Parser类的成员函数。