关于JAVA的一个小问题.谢谢

来源:百度知道 编辑:UC知道 时间:2024/05/22 01:59:59
小弟初学JAVA.遇到了一个可能大家认为白痴而我认为难的问题:
请看下面的程序:
public class AAA{
static int i;
int age;
String name;
AAA(int x,String y){
age=x;name=y;
i++;
System.out.println("No "+i+" name:"+y+" age:"+x);
}
public static void main(String [] args){
AAA s1=new AAA(21,"张三");
AAA s2=new AAA(20,"李四");
AAA s3=new AAA(10,"王五");
}
}
输出结果为:
No 1 name:张三 age:21
No 2 name:李四 age:20
No 3 name:王五 age:10
小弟不明白的是在什么时候和在哪里给i赋的初值.
还有对于起类名有什么要求?
谢谢哥哥姐姐:)
谢谢哥哥姐姐们指点.

AAA(int x,String y){
age=x;name=y;
i++;
System.out.println("No "+i+" name:"+y+" age:"+x);
}
这是一个构造函数,你在主程序里NEW了三次就要调用三次构造函数,调用一次i就++,
看这句static int i; 这是一个静态变量,理解的简单点他会保存你的值,
i++ ==> i=0+1=1

应为i是static的,所以在classload装载你的AAA时候,首先对i进行初始化,因为是整型,所以初始化为0;

其他关于变成规范的东西可以参考sun公司的开发规范,这是一种约定,不是一定。

类名 必须以大写字母开头
两个单词以上 则每个单词开头均需大写
若含首字母缩写字,则每一个字均需大写
一般以名词代表此类