我有一个由各种静态方法组成的辅助类,其中一个方法需要Context来访问一些信息.可以将Context作为参数传递给静态帮助器方法可能导致内存泄漏吗?
public class ConnectionHelper {
public static boolean isConnected(Context context) {
ConnectivityManager cm = (ConnectivityManager) context.getSystemService(Context.CONNECTIVITY_SERVICE);
return cm != null;
}
}
Run Code Online (Sandbox Code Playgroud)
静态方法如何表现,它在执行后处理上下文引用还是后续在内存中挂起?
取决于你Context对传入的引用做了什么.
如果无限期地存储引用,它将泄漏.与static-ness 无关.(虽然使用静态变量很容易意外地存储引用很长时间.)
您发布的代码不会在方法范围之外的任何位置存储引用,也不会泄漏.
| 归档时间: |
|
| 查看次数: |
348 次 |
| 最近记录: |