public class Count {
private int serialNumber;
public static int counter=0; public static int getTotalCount() {
return counter;
}
public Count() {
counter++;
serialNumber = counter;
}实现对对象的计数。static变量属于整个类,而不是某个具体的对象。
上述代码加载时,counter被置为0,以后每调用一次构造函数,counter加一。于是实现了对对象的计数。也可以用静态初始化代码来初始化。如:
public class A{
static int a;
static {
a=0;
}
}
静态初始化代码也只在类加载时执行一次,而不是每构造一个对象就执行一次。
private int serialNumber;
public static int counter=0; public static int getTotalCount() {
return counter;
}
public Count() {
counter++;
serialNumber = counter;
}实现对对象的计数。static变量属于整个类,而不是某个具体的对象。
上述代码加载时,counter被置为0,以后每调用一次构造函数,counter加一。于是实现了对对象的计数。也可以用静态初始化代码来初始化。如:
public class A{
static int a;
static {
a=0;
}
}
静态初始化代码也只在类加载时执行一次,而不是每构造一个对象就执行一次。
public static int counter=0;//这行有问题吧
{ static int i;
static void m()
{statement;}
}
class T2
{T1.i=xxx;
T1.m();
}
即static 可以不通过实例对象而直接通过类直接调用