【发布时间】:2021-07-02 22:33:33
【问题描述】:
我想创建一个类并引用“当前类的类型”。
例如,在这个小 sn-p 中,我创建了一个类 A,其中包含 .child。
正如它所写,.child (A?) 的类型是“硬编码”,我的意思是,如果我创建扩展 A、@987654329 的 B @ 将是 A? 类型。我希望它自动成为B? “因为当前类是B”。
class A {
A? child;
}
class B extends A {
}
B? f(B b) {
return b.child;
}
因为它现在,它显示错误
line 10 • A value of type 'A?' can't be returned from the function 'f' because it has a return type of 'B?'.
有没有办法做我想做的事?如果是,怎么做?
【问题讨论】: