在变量声明前加上关键字 static,可以使局部变量保留多次调用一个方法所得的值。例如:
static int hitCount = 0;
声明整数 hitCount 是一个静态变量。和其他常见的局部变量不同,静态变量的初始值为
0,所以前面显示的初始值是多余的。还要注意的是,它们只在程序开始执行时初始化一次,并且在多次调用方法时保存这些数值。
所以下面这段代码:
-(void) showPage
{
}
可能出现在一个 showPage 方法中,它用于记录该方法的调用次数。只在程序开始时局部静态变量设置为 0,并且在连续调用 showPage 方法时获得新值。
需要注意的是,将 pageCount 设置为局部静态变量和实例变量之间的区别。对于前一种情况,pageCount
能记录调用 showPage 方法的次数。对后一种情况,pageCount 变量可以计算每个对象调用 showPage 方法的次数,因为每个对象都有自己的 pageCount 副本。