class Count{
private int serialNumber;
public static int counter=0;
public Count(){
counter++;
serialNumber=counter;
}
public int getSerialNumber(){
return serialNumber;
}
}
public class TestStaticVar { /**
* @param args the command line arguments
*/
public static void main(String[] args) {
Count[] cc=new Count[10];
for(int i=0;i<cc.length;i++){
cc[i]=new Count();
System.out.println("cc["+i+"].serialNumber="+cc[i].getSerialNumber());
}
}}
看半天都很迷糊,主要是main方法看不怎么懂。
private int serialNumber;
public static int counter=0;
public Count(){
counter++;
serialNumber=counter;
}
public int getSerialNumber(){
return serialNumber;
}
}
public class TestStaticVar { /**
* @param args the command line arguments
*/
public static void main(String[] args) {
Count[] cc=new Count[10];
for(int i=0;i<cc.length;i++){
cc[i]=new Count();
System.out.println("cc["+i+"].serialNumber="+cc[i].getSerialNumber());
}
}}
看半天都很迷糊,主要是main方法看不怎么懂。
for(int i=0;i<cc.length;i++){
cc[i]=new Count();这里看不懂,数组怎么自定义,cc.length指的什么?cc的长度怎么显示出来的,我是新手,看不懂,拜托了,(*^__^*)
for(int i=0;i<cc.length;i++){
cc[i]=new Count();这里看不懂,数组怎么自定义,cc.length指的什么?cc的长度怎么显示出来的,我是新手,看不懂,拜托了,(*^__^*)
Count[] cc=new Count[10];//这里不会创建Count对象,只为其申请内存空间,因此这里执行完后,counter的值仍为0;
//要注意的是static 修饰的变量,其所有实际共享内存的。
for(int i=0;i<cc.length;i++){
cc[i]=new Count();//这里才开始构造对象,第一次执行0++=1,打印cc[0].serialNumber=1
//第二次执行1++=2 打印cc[1].serialNumber=2
//......
//第10次执行9++=10 打印cc[9].serialNumber=2
//
System.out.println("cc["+i+"].serialNumber="+cc[i].getSerialNumber());
}
创建10个null 引用 0 -9
c[i] = new Count()
为c[i]分配空间cc.length 是数组的长度,out.println(cc.length);
cc.length的值10如果
Count [] cc=new Count[100],那么一定义了一个长度为100的数组,cc.length的值为100
...
Count[] cc=new Count[n],定义一个长度为n的数组,cc.length的值为n。这里的n为任意整数