Kotlin - kotlin是否包含像java类中的基类的Object类?

时间:2017-07-07 09:23:18

标签: kotlin

在我的代码中我定义了以下变量,

var obj_str: Object = "NEW" as Object  

发出警告This class shouldn't be used in Kotlin. Use kotlin.Any instead

所以,我需要知道任何类似于kotlin中的对象还是其他任何东西?

还需要知道等待方法,如wait(),notify()等在Object类中可用但不在Any中,所以在kotlin中执行该操作?

2 个答案:

答案 0 :(得分:9)

是的,Any是Kotlin类层次结构的根,完全像Object是Java类层次结构的根。

换句话说,每个非可空类都是Kotlin中Any的子类,所有类都是Any?的子类。

在JVM上使用Kotlin时,它实际上只是mappedObject,所以它们完全相同。

答案 1 :(得分:0)

您的代码可以这样写。

var obj_str: Any = "NEW" //You don't need to cast it

var obj_str: Any? = "NEW" //If obj_str could be null