我正在构建一个只有 3 个公共功能的“收藏夹”管理器:
- init(Iterable items) 初始化收藏夹(来自首选项)
- 切换(T 项目)添加/删除任何收藏夹
- contains(T item) 验证一个项目是否是最喜欢的
这适用于名为 _favorites 的私有列表。
我想允许只读访问此私人列表以便显示它,但我想防止像 add() 或 remove() 这样的修改,因为它会破坏收藏夹类的逻辑。
我想我可以这样做:
final List<T> _favorites;
List<T> get favorites => List.unmodifiable(this._favorites);
但是虽然它不允许在运行时添加()或删除()......它确实编译没有linter警告。
甚至可以做我想做的事吗?
谢谢。