我在接受采访,下面的问题是什么?
我可以假设这是一个问题,你不能检查一个类是否为空,对吧?!
谢谢!
public class NiceActivity extends Activity {
private static AmazingClass a;
class AmazingClass {
int x;
int y;
}
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_nice);
if (a == null) {
a = new AmazingClass();
}
}
}
最佳答案
内部类不是静态的,这可能会导致它在仍有对其引用的情况下超过活动。这可能会导致活动泄漏。
本文更深入地解释了这个问题:
http://www.androiddesignpatterns.com/2013/01/inner-class-handler-memory-leak.html