android – 将参数传递给AsyncTask构造函数有哪些优点/缺点?

我正在使用AsyncTask,并想知道将参数传递给构造函数的含义是什么,而不是直接将它们传递给doInBackground(…)方法的execute()调用,例如:

呼叫:

new SoMetask(bitmap,integer,"somestring").execute();

类:

public class SoMetask extends AsyncTask<Void,Void,String> {
private String string;
private Bitmap image;
private int integer;

public SoMetask (Bitmap bmp,int someint,String s){
    this.image = bmp;
    this.string = s;
    this.integer = someint;
}

protected String doInBackground(Void... params) {       
    // whatever
    return "string";
}

@Override
protected void onPostExecute(String result){
    // whatever
}

}

设计,优雅,重用和性能有哪些优点/缺点?

谢谢.

解决方法

What are the advantages/disadvantages regarding design,ellegance,reuse and performance??

如果您有任意数量的相同类型(例如,您希望任务下载的字符串的几个URL),请使用参数来执行().

如果您有几个不同类型的参数,请使用构造函数参数,因此您可以利用Java的编译时类型安全性.

如果你只有一个对象传入(或者没有),这两种方法几乎相当.

相关文章

Android性能优化——之控件的优化 前面讲了图像的优化,接下...
前言 上一篇已经讲了如何实现textView中粗字体效果,里面主要...
最近项目重构,涉及到了数据库和文件下载,发现GreenDao这个...
WebView加载页面的两种方式 一、加载网络页面 加载网络页面,...
给APP全局设置字体主要分为两个方面来介绍 一、给原生界面设...
前言 最近UI大牛出了一版新的效果图,按照IOS的效果做的,页...