在我的 android 应用程序中,我经常实例化以下对象。
mWidget = new ComponentName(mContext, Widget.class);
mAppWidgetManager = AppWidgetManager.getInstance(mContext);
mLayoutInflater = (LayoutInflater)mContext.getSystemService(Context.LAYOUT_INFLATER_SERVICE);
这些对象经常被使用。什么是最佳实践。将它们实例化一次作为我类中的私有(private)成员,还是每次我需要它们时都实例化它们?
保存引用可能会消耗更多内存,但如果经常使用它们,可能更愿意在一分钟内实例化它们 10 次?
感谢您的帮助:-)
最佳答案
保存引用可能会消耗更多内存,但如果经常使用它们,可能更愿意在一分钟内实例化它们 10 次?
我认为这种说法是不正确的。持有引用不会增加内存消耗,内存消耗将始终相同,但内存不符合垃圾收集和其他对象重新分配的条件。
创建对象总是代价高昂的,如果你不搞乱引用(换句话说,使对象不符合 GC 的条件),我认为拥有单个对象是不错的选择。
关于android - 最佳实践 - 每次都保留引用或实例化?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9505330/