Java AsyncTaskLoader真的继承自AsyncTaskLoader吗?

Java AsyncTaskLoader真的继承自AsyncTaskLoader吗?,java,inheritance,android-asynctask,android-studio,asynctaskloader,Java,Inheritance,Android Asynctask,Android Studio,Asynctaskloader,如果突出显示Drodio(Android Studio)和mash Ctrl+N中的一个类,它将显示该类的继承层次结构,与AsyncTask类似: 这似乎表明AsyncTaskLoader继承自AsyncTaskLoader?是这样吗?如果是,那是故意的吗?或者这里发生了什么 更新 我的坏;我在提示中读到了“Ctrl+N”,它实际上是说“Ctrl+H”。以下是后者带来的好处: (尽管仍然不是我所期望的)准确回答这个问题需要更多地了解您的项目(大概是hhs.app)。然而,Drodio的层次结

如果突出显示Drodio(Android Studio)和mash Ctrl+N中的一个类,它将显示该类的继承层次结构,与AsyncTask类似:

这似乎表明AsyncTaskLoader继承自AsyncTaskLoader?是这样吗?如果是,那是故意的吗?或者这里发生了什么

更新 我的坏;我在提示中读到了“Ctrl+N”,它实际上是说“Ctrl+H”。以下是后者带来的好处:


(尽管仍然不是我所期望的)

准确回答这个问题需要更多地了解您的项目(大概是hhs.app)。然而,Drodio的层次结构确实发现了
PersistHistoryAsyncTask
,它是
ActivityChooserModel
的私有内部类,由于是私有类,所以没有在Android文档中列出,因此我的观点是,在我的原始响应(如下)中,Android库中没有继承自
AsyncTask
的类这是不正确的

假设
RESTfulActivity
SQLiteActivity
MainActivity
DeliveryItemActivity
中列出的内部类都扩展了
AsyncTask
,那么第二个屏幕截图中的结果完全是可以预期的
AsyncTask
不从任何对象继承(显然,除了
对象
),您有9个类扩展了
AsyncTask
。因此,您有一个非常简单的层次结构:

java.lang.Object
  |
  +-- android.os.AsyncTask
        |
        +-- hhs.app.RESTfulActivity.PostDeliveryItemTask
        |
        +-- hhs.app.SQLiteActivity.FetchAndPopTask
        |
        +-- hhs.app.MainActivity.GetVendorsTask
        |
        +-- hhs.app.DeliveryItemActivity.PostDeliveryItemTask
        |
        +-- etc...

原始答复: 您将看到两个不同的类:
android.content.AsyncTaskLoader
android.support.v4.content.AsyncTaskLoader

前者是:

抽象加载器,提供一个
异步任务
来完成工作

后者是:

框架的
AsyncTaskLoader
的静态库支持版本。用于编写在Android 3.0之前的平台上运行的应用程序

两个
AsyncTaskLoader
类都从同一个包中名为
Loader
的类继承,两个
Loader
类都从
对象继承。这些类都没有实现任何接口

您可以在grepcode.com上看到这两个类的源代码:

在我看来,两个类都没有以任何方式相互耦合。支持版本导入了
android.content.Context
,但是
Context
在它自己的包中对
AsyncTaskLoader
没有任何作用

尽管如此,您发布的Drodio屏幕截图中的功能似乎根本不打算成为继承树。相反,这是一个类搜索。您突出显示了
AsyncTask
,搜索结果显示了另外3个以“AsyncTask”开头的类,2个以“AsyncTask”结尾的类,以及1个以“Async”开头并以“Task”结尾的类(除了实际的
AsyncTask
类之外的所有内容)。考虑到
AsyncTask
没有继承这些类中的任何一个(
AsyncTask
没有扩展或实现任何东西),这些类也没有继承自
AsyncTask
(在
android.
中没有扩展
AsyncTask
)的类,很明显,Drodio的这一特征与遗传无关

Driodo没有显示您自己的
AsyncTask
的具体实现这一事实似乎是最后一个问题,特别是因为您的光标位于定义子类的那一行。(虽然并非所有IDE都可以将用户定义的函数合并到文档弹出窗口中,但大多数IDE至少能够处理同一个文件中的内容。)

你说得对-我在提示中将“Ctrl+H”误读为“Ctrl+N”。更新了一个屏幕截图。