【问题标题】:is it required to declare a context in Android Java classes?是否需要在 Android Java 类中声明上下文?
【发布时间】:2013-01-28 00:50:05
【问题描述】:

我正在查看一个 android 应用程序中的一个类,它是一个普通的 java 类,它不扩展 Activity 或 Service 或任何其他 Android 类。

我注意到代码的作者创建并初始化了一个上下文对象。

对于 Android 中不扩展任何其他类的所有 java 类,是否需要创建上下文对象?只创建一个没有上下文部分的空构造函数可以吗?

我想在自己的应用程序中制作普通的 java 类,但不知道是否可以这样做,或者不这样做有什么缺点。

这里是一个示例代码的剪辑:

 public class PlayGame {]

 private final Context ourContext;

 // constructor as required for android java classes
 public PlayGame(Context c){
    ourContext = c;
}

【问题讨论】:

  • 您是否将使用Context 在该课程中提供的任何内容? 是的 -> 提供Context 参考。否 -> 不要进行引用并避免您可能造成的随机内存泄漏。

标签: java android class constructor android-context


【解决方案1】:

我想在自己的应用程序中制作普通的 java 类,但不知道是否可以这样做,或者不这样做有什么缺点。

只要您的类为您的程序进行计算而不是实际的 UI 工作,那么您可以在不提供 Context obj 的情况下声明一个类。通常,不传入 Context obj 的类是基本的帮助类,用于为您的应用程序操作数据/对象。

【讨论】:

    【解决方案2】:

    上下文实例包含有关环境的信息并提供应用程序可能需要的服务。如果你的类不需要它,你可以跳过将上下文对象传递给你的类构造函数。

    【讨论】:

      【解决方案3】:

      只创建一个没有上下文部分的空构造函数可以吗?

      是的。只要您不打算使用 Context 对象提供的任何东西。

      【讨论】:

        猜你喜欢
        • 2019-08-22
        • 1970-01-01
        • 2010-11-23
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多