这里到底能不能继承
来源:7-10 密封类 sealed class
慕莱坞0998854
2023-05-19
老师你好,这一节开始就把我弄晕了,一开始老师说密封类,首先是一个抽象类,所以可以被继承,然后又说它的构造器是私有的,所以没办法继承它,然后又有下面的代码:
class Song {
}
class ErrorInfo {}
sealed class PlayerState
object Idle : PlayerState()
class Playing(val song: Song) : PlayerState() {
fun start() {}
fun stop() {}
}
class Error(val errInfo: ErrorInfo) : PlayerState() {
fun recover() {}
}
请问下老师,这里的Playing和Error类是不是PlayerState的子类呢?如果是的话,到底有没有继承PlayerState这个密封类呢?
写回答
1回答
-
bennyhuo
2023-05-19
同学再仔细听一下,构造器私有,所以文件外部无法访问,所以密封类无法被(文件外部的类)继承。20
相似问题