我在旧的遗留系统中发现了这段代码,如果没有任何问题,我不想碰它。
但是我觉得这段代码有一些缺陷,我找不到它。这只是不常见的模式还是存在一些隐藏的陷阱或内存泄漏?
private static final Foo action = new Foo() {
@Override
public void onAction(MyDialogFragment fragment) {
if (fragment.getContext() != null) {
fragment.getActivity().finish();
}
}
};
此代码用于片段中
更新:我怀疑匿名内部类的对象具有对父片段的引用,并且由于此类的对象保存在静态字段中,因此永远不会收集它,因此也永远不会收集父片段。我的推理错了吗?
慕的地8271018
皈依舞
侃侃无极
相关分类