我想从类方法返回一个枚举元素,以进一步在其他类方法或函数中使用它。我如何返回枚举元素或正确使用它以获得与在下面的非“分类”示例中使用它相同的结果?
enum colors { RED, GREEN }
class testClass {
colors _color;
colors get color {
return _color;
}
void setColor(colors color) {
_color = color;
}
}
main() {
void test(colors color) {
switch (color) {
case colors.RED:
{
print('RED');
}
break;
case colors.GREEN:
{
print('GREEN');
}
break;
}
}
test(colors.RED);
testClass abc;
abc.setColor(colors.GREEN);
test(abc.color);
}
当我执行 Codesnipped 时,我的假设是,我得到 RED 和 GREEN 的输出。相反,我得到以下信息:
$ 飞镖测试.dart
红色的
未处理的异常:NoSuchMethodError:在 null 上调用了方法“setColor”。接收者:null 尝试调用:setColor(Instance of 'colors')
默认情况下,abc 的值引用为 null。因为它没有初始化。您需要初始化 abc 对象,如下所示:
testClass abc = testClass();
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句