创建更多对象会导致更多的资源消耗吗?
DateFormat dateFormat = new SimpleDateFormat("yyyy/MM/dd HH:mm:ss");
timer.schedule(new TimerTask() {
@Override
public void run() {
Date date = new Date();
dateandtime.setText(dateFormat.format(date));
}
},0,1000);
我有这个代码,应用程序需要连续运行多年。我担心随着时间的推移,应用程序使用的资源可能会因为每秒创建一个新对象而增加。
答案 0 :(得分:2)
理论上:是的。您创建的每个对象都会占用空间。
然而,Java使用这个称为垃圾收集器的东西。 See this question
简而言之:它将负责摆脱不再被引用的对象。因此,您不必担心在您的代码中创建越来越多的对象。
请记住,实际上可以以垃圾收集器无法清理的方式创建对象。因此,你不能只是继续前进,认为你永远不必担心这样的事情。
然而,您的代码并非如此。你不会遇到问题。