创建新对象丢弃旧对象
create new object discarding older
我有一个包含 class 实例的变量
var a=Objj();
现在在做了一些事情之后我必须像这样用新对象重新启动变量a
a=Objj();
然后稍后
a=Objj();
这是一个好习惯吗?
旧对象会怎样?
在您的情况下,旧对象将替换为新实例。我建议创建一个 clear()
方法来重置实例中的数据。否则你最初的建议将取决于你想做什么。
您可以安全地将旧实例替换为新实例,并且 dart 垃圾收集器将 de-allocate 变量的内存。
或者,如果构造函数是 const
构造函数并且它是使用 const
关键字初始化的,那么在编译时如果对象相同,它们将在运行时共享一个实例。
var a = const ImmutablePoint(1, 1);
var b = const ImmutablePoint(1, 1);
assert(identical(a, b)); // They are the same instance!
我有一个包含 class 实例的变量 var a=Objj(); 现在在做了一些事情之后我必须像这样用新对象重新启动变量a a=Objj(); 然后稍后 a=Objj();
这是一个好习惯吗? 旧对象会怎样?
在您的情况下,旧对象将替换为新实例。我建议创建一个 clear()
方法来重置实例中的数据。否则你最初的建议将取决于你想做什么。
您可以安全地将旧实例替换为新实例,并且 dart 垃圾收集器将 de-allocate 变量的内存。
或者,如果构造函数是 const
构造函数并且它是使用 const
关键字初始化的,那么在编译时如果对象相同,它们将在运行时共享一个实例。
var a = const ImmutablePoint(1, 1);
var b = const ImmutablePoint(1, 1);
assert(identical(a, b)); // They are the same instance!