如何从 AsyncTask 扩展为通用基类?

如何从 AsyncTask 扩展为通用基类?

问题描述:

AsyncTask 有三种不同的实现:

public class DownloadTask extends AsyncTask<String, Integer, Boolean>
public class JsonParserTask extends AsyncTask<Object, Void, Boolean>
public class PostCommentTask extends AsyncTask<String, Void, HttpRequestResult>

我希望他们扩展一个 BaseAsyncTask,然后我可以将其用于依赖注入.AsyncTask 的类签名如下所示:

I would like them to extend a BaseAsyncTask which I can use for dependency injection then. The class signatur of AsyncTask looks like this:

public abstract class AsyncTask<Params, Progress, Result>

如何在保持不同参数的同时扩展 AsyncTask?

How can I extend AsyncTask while maintaining the different parameters?

                               | DownloadTask
AsyncTask <-- BaseAsyncTask <--| JsonParserTask
                               | PostCommentTask

尝试:

abstract class BaseAsyncTask<Params, Progress, Result> 
                  extends AsyncTask<Params, Progress, Result>