flutter - Flutter 类对象在没有 getter 的情况下访问私有字段
问题描述
嗨,我有点困惑,为什么 main 方法可以访问私有字段。
void main() {
A obj = A();
obj._b = 'a';
print(obj._b);
}
class A {
String _b;
}
输出:-
解决方案
与 Java 不同,Dart 没有关键字 public、protected 和 private。
没有关键字或注释,因此您可以在类级别将字段/函数声明为私有,但您可以在 lib 范围内将字段/函数声明为私有成员。读
因此,让我们来回答您的问题,您的主要方法能够访问以“_”开头的字段,因为它们在同一个包中。创建一个新文件并将您的类移动到该文件,您将无法访问私有成员。
所以,
以下划线 (_) 开头的标识符仅在库中可见。
推荐阅读
- asp.net-core - 为什么在使用 IIS Express 而不是 Kestrel 时 Active Directory 可以与 Visual Studio MVC 模板一起使用?
- raspberry-pi3 - 当光标放在 wxTextCtrl 上时,调用屏幕键盘的最佳方法是什么?
- javascript - 有没有办法使用 UI Kitten 将主色设置为 Layout 组件的背景色?
- c# - 如何发送延续令牌来查询天蓝色的时间序列见解?
- java - 保存数组中两个数字之间的奇数
- xquery - 存在-db - 文件:移动不移动文档
- gradle - 如何使用环境名称设置 gradle test 命令
- c# - C# ChromeDriver:javascript 错误:未处理的对象
- java - 我需要文件结尾的正确组合键
- r - 有没有一种方法可以在数据框中绑定不同数量的行?