我有一个活动,其中有一个名为asynctask的类。在asynctask类中,我想将计数器声明为静态变量,但我不能,因为asynctask类被假定为mainactivity的内部类。
有没有办法在asyctask“内部类”中创建一个静态变量来计算为asynctask创建的对象的数量?
代码

class MainActivity extends Activity {
    ....
    ....
    ....
    ....

    class MyAsync extends AsyncTask <void, Void, Void> {

        private static int counter = 0; // is not possible here
    }

}

最佳答案

您可以创建一个构造函数来增加counter中的AsyncTask
这样做:

class MainActivity extends Activity {
....
....
....
....
    int counter = 0;
    class MyAsync extends AsyncTask <void, Void, Void> {

       MyAsync()
       {
           counter++;
       }
    }

}

其背后的逻辑是:任何类的构造函数都将被调用
每次创建新对象时。内部构造函数
我们有counter++所以每次创建新对象时
计数器递增,您将拥有
对象已创建。

10-07 19:40
查看更多