栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 面试经验 > 面试问答

扩展AsyncTask

面试问答 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

扩展AsyncTask

AsyncTask
类可以被认为是一个非常方便的线程机制。它为您提供了一些工具,您可以使用简单的Java线程根本没有的工具,例如取消清除操作。您无需在后台执行任何UI。您可以通过将一个编写为匿名类来简单地执行一个,如下所示:

    new AsyncTask<Integer, Void, Void>(){        @Override        protected Void doInBackground(Integer... params) { // **Code** return null;        }    }.execute(1, 2, 3, 4, 5);

它会执行您

doInBackground
使用给定参数在后台线程中放入的任何内容。同样,您可以简单地使用
Void
和执行而无需任何参数。

我可以想到以这种方式执行线程的唯一好处是可以帮助将来进行维护。在某些情况下,您可能想要修改UI线程上需要的某些内容,在这种情况下,您将覆盖其他方法。其他情况是,您只是没有采取足够的行动来证明编写另一个类是合理的,因此只需动态创建一个类并使用它即可完成。

编辑:

回答#3:它们实际上是相同的。

Void
就像其他对象一样,该对象是Java对象。您没有使用
Void
,因此在该位置使用的内容无关紧要。只是
AsyncTask
合同需要传入三种类类型,默认情况下,它们是
Object
所有内容的基础类。



转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/453582.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号