分类器 JSONObject 没有 'companion 对象,因此必须在此处初始化

Eze*_*wei 2 java intellij-idea kotlin companion-object

import org.json.JSONObject
JSONObject deviceInformation = ...
Run Code Online (Sandbox Code Playgroud)

在此处输入图片说明

我试图创建一个像这样的伴随对象,但没有真正起作用......对不起,Java和Kotlin中的菜鸟...... 在此处输入图片说明

是的,JSONObject 是正确导入的

import org.json.JSONObject

Zoe*_*Zoe 7

您使用的语法不正确。Kotlin 中的变量声明如下:

[var/val] name: OptionalExplicitType = something
Run Code Online (Sandbox Code Playgroud)

这意味着JSONObject var instance:...不允许。

将其更改为:

var instance: JSONObject = ...
Run Code Online (Sandbox Code Playgroud)

设置它也很重要。由于看起来您正在尝试创建一个单例,因此您可以使用 anobject而不是类。

如果你想用老式的方式来做,让它可以为空:

var instance: JSONObject? = null
Run Code Online (Sandbox Code Playgroud)

然后检查它是否为空,初始化,设置并返回它,否则返回当前值。

如果这不是你的目标,你仍然需要初始化它,除非你让它延迟。但是如果你这样做,你需要在尝试访问它之前初始化它,否则它会抛出异常。