为什么AsyncTask必须被子类化才能使用?

时间:2014-07-28 10:24:54

标签: android android-asynctask

android的开发者文档说“AsyncTask必须被子类化才能使用”!为什么它应该是子类?如果我只是在如下所示的函数中使用AsyncTask,那么它们是否有任何问题

     private void processXMLinBackground(final String Url) {

    new AsyncTask<String, Void, List<Entry>>() {

        @Override
        protected void onPreExecute() {
            }

        @Override
        protected void onPostExecute(List<Entry> result) {
            // TODO Auto-generated method stub
            super.onPostExecute(result);
        }

        @Override
        protected List<Entry> doInBackground(String... params) {
            return NewList;

        }

    }.execute(Url, null, null);
}

2 个答案:

答案 0 :(得分:3)

因为该课程为abstract,您必须提供doInBackground的实施

答案 1 :(得分:0)

你不能按照定义实例化一个抽象类,这里是为了清楚你的想法:

  

抽象类无法实例化;它们必须是子类,并且   必须为抽象方法提供实际的实现。任何   当然,指定的实现可以被额外的覆盖   子类。对象必须具有所有对象的实现   方法。您需要创建一个提供实现的子类   对于抽象方法。

相关问题