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

前端之家收集整理的这篇文章主要介绍了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相关文章