Kotlin基础 — Any

Any 类型是 Kotlin 中所有非空类型的根类型,Any? 可以是任何可空类型的根类,也兼容非空类型。

与Java对比:

  • Any 和 Object看起来很像,但是Any不能等同于java.lang.Object。
  • Any中定义的方法有:toString()、equals()、hashCode() 3个
  • Object类中定义的方法有:toString()、equals()、hashCode()、getClass()、clone()、finalize()、notify()、notifyAll()、wait()、wait(long)、wait(long,int) 11个

方法wait()和notify()在Any类型的引用上不可用。通常不鼓励使用java.utl.concurrent。如果确实需要调用这些方法,可以将其转换为java.lang.Object

(foo as java.lang.Object).wait()

若要检索某个java class 的一个class对象,请在类引用上使用Java extension属性:

val fooClass = foo::class.java
发布了63 篇原创文章 · 获赞 1 · 访问量 2101

猜你喜欢

转载自blog.csdn.net/weixin_42046829/article/details/105409373