【问题标题】:What's happenings if I don't implement the override methods in Android?如果我没有在 Android 中实现覆盖方法会发生什么?
【发布时间】:2013-01-31 19:31:03
【问题描述】:

我正在开发一个 Android 应用程序,并且我已经了解了活动的生命周期。 我不知道,如果我不实现生命周期的方法 onCreate()、onDestroy() 等会发生什么。 JVM会自动调用这些方法吗? 我习惯于使用 iOS,而对 Java 的更改对我来说有些特殊。我想调用方法来管理内存。 我认为这些方法有助于管理我的应用程序中的内存,并且不会在运行时崩溃。

【问题讨论】:

  • 这是java。您不必担心内存。 :)。很奇怪……不是吗?
  • 很特别,因为我想销毁我创建的每个对象。而 Java 是自己做的。

标签: android android-lifecycle android-memory


【解决方案1】:

Android 框架总是调用这些方法。如果您不实现它们,则将运行基类方法。通常他们什么都不做(重要的)。但是,您肯定需要重写某些方法(至少 onCreate)才能使您的活动有用。

就内存管理而言,您通常根本不必担心这一点。 Java 具有运行良好的自动垃圾收集功能。与 Objective C 不同,在 Java 中实际上没有手动内存管理的机制;它总是由 JVM 完成。就内存管理而言,您唯一需要注意的是确保您不会维护对不再需要的大型数据结构的硬引用。请参阅 Android 博客中的文章Avoiding Memory Leaks

【讨论】:

    【解决方案2】:

    如果一个方法没有被覆盖,它的基类实现将被使用。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-02-13
      • 2011-03-14
      • 1970-01-01
      • 2020-04-29
      • 1970-01-01
      相关资源
      最近更新 更多