CertificationKeyforSCJP1.4
Section1DeclarationsandAccessControl
Objective1,CreatingArrays
Writecodethatdeclares,constructsandinitializesarraysofanybasetypeusinganyofthepermittedforms,bothfordeclarationandforinitialization
目标1, 创建数组
采用不同的格式来编写任一基本数据类型数组的声明,构造及初始化的代码。
数组是一连串对象或基本数据,它们必须同型,并以一个标识符封装在一起。数组好象一个对象,通过new关键字来创建。
声明数组
数组的声明并不能为数组分配内存。声明时数组不能有大小信息,也就是说编译器并不允许你告诉它究竟数组有多大,它只是一个reference(引用),并没有对应的空间。声明数组的方式有: inta1;inta1两种,intnum是错误的数组声明方式。
声明并创建数组
声明一个数组并同时为它分配内存。
Intnum=newint;
声明并初始化数组
声明一个数组并同时进行初始化。
Intnum=newint{0,1,2,3,4};
Intnum=newint{0,1,2,3,4};//!错误
数组知道自己的大小
与c++不同,数组知道自己的大小,当数组越界时,会抛出ArrayIndexOutOfBoundsException异常。数组具有length属性(不是length()方法),它能告诉你数组的大小。
多维数据
intm;intm;intm;
数组的缺省值
与其它的变量不同,不论数组在向处创建,它总是使用可以使用缺省值。
示例:
publicclassMyAr{
publicstaticvoidmain(Stringargv){
inti=newint;
inti;//!编译错误
intm={{1,2,3,4},{2,3,4,5},{4,5,6,7}};
intn={{1,2,3,4},{2,3,4,5},{4,5,6}};
intj;
m=n;
for(intk=0;k<n.length;k++){
System.out.println(n[k].length);
}
System.out.println(i);//!运行错误,超界
System.out.println(i); //正确,打印0
System.out.println(j); //!编译错误,没有初始化
For(intk=0;k<i.length;k++){
I[k]=k;
}
}
}
Objective2,Declaringclassesandvariables
Declareclasses,innerclasses,methods,instancevariablesstatic,variablesandautomatic(methodlocal)variables,makingappropriateuseofallpermittedmodifiers(suchaspublicfinalstaticabstractandsoforth).Statethesignificanceofeachofthesemodifiersbothsinglyandincombinationandstatetheeffectofpackagerelationshipsondeclareditemsqualifiedbythesemodifiers.|||
目标2 声明类与变量
声明类,内部类,方法,实例变量,静态变量,自动变量(局部变量),正确使用各种修饰符(public,private,static,final,abstract)。
在JAVA中万事万物皆对象,即使JAVA程序本身也是对象。
类的定义和对象的生成
publicclassMyClass{//类定义
inti;
floatf; //类数据成员
voidamethod(){ //方法
inti; //局部变量
}
生活不会永远都困难;祝你爱情蜜甜,事业大进步