如何重载赋值运算符以在两个不同的类之间转换?
class A
class B
val bb: B = B();
val aa: A = bb;
Kotlin只支持重载一些预定义的运算符。请参阅此处的文档。
你在那里尝试的是不可能的,你不能将一些B
分配给A
类型的变量,除非它们的类型层次结构允许,如下所示:
open class A
class B : A()
val bb: B = B()
val aa: A = bb