可以将Context作为参数传递给静态帮助器方法可能导致内存泄漏吗?

S-K*_*-K' 3 java android

我有一个由各种静态方法组成的辅助类,其中一个方法需要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)

静态方法如何表现,它在执行后处理上下文引用还是后续在内存中挂起?

laa*_*lto 5

取决于你Context对传入的引用做了什么.

如果无限期地存储引用,它将泄漏.与static-ness 无关.(虽然使用静态变量很容易意外地存储引用很长时间.)

您发布的代码不会在方法范围之外的任何位置存储引用,也不会泄漏.