为什么不能通过实例访问“静态”字段。 Dart 2.4 Flutter 1.7 Android Studio 3.4
当我尝试将代码从JAVA移植到Flutter(Dart)时,出现了编译错误
我在MyMainBloc中定义了如下变量
static LoginStatus loginStatus = null;
然后我创建一个实例:
MyMainBloc myApp;
我希望使用类似这样的东西:myApp.loginStatus,而不是MyMainBloc.loginStatus。
答案 0 :(得分:1)
特定类的静态成员是在类级别而不是对象级别访问的。这基本上意味着静态变量在对象之间共享。
考虑到这一点,您可能尝试做的可能不是最好的主意。在不看更多代码的情况下,最好将您的loginStatus属性声明为封装类的私有成员,然后通过一种方法(也许是标准的get *()方法)访问该成员。
这里的班级成员Oracle documentation可能会有帮助。