flutter 我们应该避免使用static final吗?[关闭]

chy5wohz  于 2023-05-19  发布在  Flutter
关注(0)|答案(1)|浏览(113)

已关闭,此问题为opinion-based。目前不接受答复。
**想改善这个问题吗?**更新问题,以便editing this post可以用事实和引用来回答。

6天前关闭。
Improve this question
如果同时有多个带有static字段的类示例,则该字段的值将仅在内存中存储一次:

void main() {
  final a1 = A();
  final a2 = A();
  print(a1.b == a2.b); //true
}

class A {
  static final _b = B();
  final b = _b;
}

class B {}

我看到flutter团队在他们的教程中使用了static final

但是在我们的团队中,有一种观点认为它可能是不好的,我们必须完全避免使用static final
据我所知,在Java和C#中,静态字段不符合垃圾收集的条件。dart的static final是真的吗?此外,final的内存大小将在运行时计算。
为什么以及在哪里可以使用static final?我们应该避免使用static final吗?

xkrw2x1b

xkrw2x1b1#

静态final字段是一个保持不变的字段,就像java一样,你可以在不示例化类的情况下访问它们。所以他们保存内存。
喜欢

class A{
static final String a="I am static";
}

你可以用a

print(A.a);

相关问题