【问题标题】:What is the actual base class of all Android classes?所有 Android 类的实际基类是什么?
【发布时间】:2019-11-23 03:13:32
【问题描述】:

在此之前,我读过文章和教程说所有 Android 组件的基类是 Application。但是当我深入研究继承时,我发现Application 类继承自ContextWrapper,它同样继承了Context 类。

有趣的是Activity 类也继承自ContetxtWrapper

为什么不把Context类称为所有android组件的基类?

【问题讨论】:

    标签: java android inheritance android-activity


    【解决方案1】:

    Android 中的 Application 类是 Android 中的基类 包含所有其他组件的应用程序,例如活动和 服务。 Application 类,或 Application 的任何子类 类,在任何其他类之前实例化,当进程为 您的应用程序/包已创建。

    该类主要用于初始化之前的全局状态 显示第一个活动。请注意,自定义应用程序对象 应该小心使用,而且通常根本不需要

    Reference

     Why isn't the Context class referred to as the base class of all
     android components?
    

    Android 中的 Application 类是 Android 中的基类 包含所有其他组件的应用程序,例如活动和 服务。

    我认为上面的行将消除您的困惑,因为基类不仅意味着它实现/扩展的内容,它更多的是关于它包含的内容。

    按照你的逻辑,如果你深入层次结构,最后所有的类,如 Application/Activity/ContextWrapper 都将扩展 [Object Class][2]

    所以 Object Class 应该是 Android 中的基类。

    但是,

    正如文档所说的

    类对象是类层次结构的根。每个班级都有 对象作为超类。所有对象,包括数组,都实现 这个类的方法。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2015-05-20
      • 1970-01-01
      • 2016-09-19
      • 2016-04-20
      • 1970-01-01
      • 2012-01-22
      相关资源
      最近更新 更多