java期末复习材料

上传人:第*** 文档编号:34059206 上传时间:2018-02-20 格式:DOC 页数:24 大小:1.11MB
返回 下载 相关 举报
java期末复习材料_第1页
第1页 / 共24页
java期末复习材料_第2页
第2页 / 共24页
java期末复习材料_第3页
第3页 / 共24页
java期末复习材料_第4页
第4页 / 共24页
java期末复习材料_第5页
第5页 / 共24页
点击查看更多>>
资源描述

《java期末复习材料》由会员分享,可在线阅读,更多相关《java期末复习材料(24页珍藏版)》请在金锄头文库上搜索。

1、JAVA 复习材料第一章1、 java 的可移植性:Java 源程序可在不同的操作系统上运行2、未用 javac 编译直接运行 java 文件,会出现“ 找不到类”的异常第二章1、Java 的数据类型 2、length 的使用所有的数组都有一个属性 length。 数组名.length:表示系统为数组所分配的连续内存空间的长度。例如:double number =new double15; /number.length 的值是 15int xx=new int34; /xx.length=3,xx0.length=43、数组的引用数组属于引用数据类型,因此两个相同类型的数组如果具有相同的引用,

2、它们就有完全相同的元素。例如: int a=1,2,3,b=4,5; 数组变量 a 和 b 分别存放着不同的引用。但是,如果使用了赋值语句:a=b;那么,a中存放的引用就和 b 的相同,这时系统将释放最初分配给数组 a 的元素,使得 a 的元素和b 的元素相同,即 a0,a1就是 b0,b1,而最初分配给数组 a 的三个元素已不复存在。4数组的初始化动态初始化:程序员指定数组长度,但不直接为数组元素分配初值。例:float boy= new float5;上述语句相当于:float boy= new float5;boy0=21.3f;boy1=23.89f 静态初始化:程序员显式指定每个元素

3、的初值,由系统决定数组长度。例:float boy=21.3f,23.89f,2.0f,23f,778.98f;注:声明数组的不能指明数组的大小,例 int 3 a=1,2,3;错误5、动态初始化和静态初始化不能同时进行。例:float boy= new float521.3f,23.89f,2.0f,23f,778.98f;是错误的。6、命令行参数每一个 Java Application 程序都有一个含有 String args参数的 main 方法。该方法的说明如下:public static void main(String args );参数 String args表示 main 方法

4、接收了一个字符串数组,该字符串数组就是从命令行上传递过来的参数。由于 Java Application 程序可以用命令行来启动,所以命令行参数就成为向Java Application 程序传递参数数据的常用而且有效的手段。例: int i=Integer.parseInt(args0);int j=Integer.parseInt(args1);运行 java 程序时键盘键入的实参至于字符串数组 arg 的 arg0和 arg1里,通过拆箱后将值分别赋值给 i 和 j 运行格式为:例 java A 5 6 (A 为 java 文件名,5 和 6 为传入的实参)第三章1、 int 型的整数运算结

5、果为 int 型,精度比 int 小的数(byte、short)运算结果都为整型(补充:char 字符型与 int 整型运算结果为 int 整型)2、单精度和双精度的浮点型:单精度后面加 f,例如 3.1f 为单精度,3.1 为双精度3、 switch 开关语句switch 语句是多分支的开关语句,它的一般格式定义如下:switch(表达式)case 常量值 1:若干个语句break;case 常量值 2:若干个语句break; case 常量值 n: 若干个语句break;default:若干语句default 语句是可选的,它接受除上面接受值的其他值。 case 后面可以跟多个语句,这些语

6、句可以不用大括号括起来。switch 后面括号中表达式的值必须是符合 byte、char、short、int、enum(String 类型 Java 7 才支持)的常量表达式,而 不能用浮点类型或 long 类型 。每个 case 语句后的值必须是与表达式类型兼容的特定的一个常量(它必须为一个常量,而不是变量) 。重复的 case 值是不允许的。4、 case 语句后面加不加 break 的区别例: switch(op)case +: result=a+b; break;case -: result=a-b; case *: result=a*b;case /: result=a/b; bre

7、ak;default: result=0;若 op 为+ ,加 break 时程序执行完 result=a+b;后会跳出 switch。若没加 break,程序会继续执行下面的 case 语句,直到遇到 break 就跳出 switch 语句或当没遇到 break 语句时就执行完 switch 语句再跳出 switch 语句。若例子中 op 为-的话,程序就会顺序执行result=a-b; result=a*b; result=a/b;后遇到 break 语句就跳出 switch 语句5、 break 和 continue 的区别如果在某次循环体的执行中执行了 break 语句,那么强行跳出整

8、个循环;如果在某次循环体的执行中执行了 continue 语句,那么 结束本次循环,即不再执行本次循环中循环体中continue 后面的语句,而转入进行下一次循环。例:public class ContinueOppublic static void main(String args)int n;for(n=1;n是带符号右移,负数高位补 1,正数补 0 例:1001 1 1100是不带符号右移,不论负数还是正数,高位补 0 例:1001 1 0100第四章1、 用关键字 static 修饰的成员变量称作 静态变量或类变量 ,而没有使用 static 修饰的成员变量称作实例变量。例如,下述 A

9、 类中,x 是实例变量,而 y 是类变量。class A float x;static int y;类变量是与类相关联的数据变量,也就是说,类变量是和该类所创建的所有对象相关联的变量,改变其中一个对象的这个类变量就同时改变了其它对象的这个类变量。无论是否产生了对象或无论产生了多少对象的情况下,类变量在内存空间里只有一份。2、实例变量、实例方法和静态成员变量、静态方法的调用(1 )实例变量和实例方法必须通过对象来调用; 例:Chinese ch1 = new Chinese(); /创建一个对象ch1.name1; /name1 为 Chinese 类里的实例变量ch1.singOurCount

10、ry1(); / singOurCountry1()为 Chinese 类里的实例方法(2 )静态成员变量和静态方法既可以通过对象也可以通过类名调用 。例:通过类名调用:Chinese. name2 /name2 为 Chinese 类里的实例变量Chinese.singOurCountry(); / singOurCountry2()为 Chinese 类里的静态方法通过创建对象调用:Chinese ch1 = new Chinese(); /创建一个对象ch1.name1; ch1.singOurCountry1(); 3、在静态方法里只能直接调用 同类中其它的静态成员(包括变量和方法)

11、,而不能直接访问类中的非静态成员。这是因为:对于非静态的方法和变量,需要先创建类的实例对象后才可使用,而静态方法在使用前不用创建任何对象。例: public class Personint arr= new int10;public static void main(String args)System.out.println(arr1);例子会无法编译,因为 main 是静态方法,在方法体中要调用 arr1,而 arr 数组是实例变量,创建类的时候 main 方法跟类同时创建,arr 并未创建即 arr 并不存在。4、静态代码块是使用 static 声明的代码块。当类被载入时,静态代码块被执

12、行,即使产生了多个实例对象,静态代码块都只被执行一次,在类中定义的静态代码块会优先于构造块,构造块优先于构造方法被执行。每次实例化对象时构造块都会执行,可执行多次。例(考运行结果)执行结果:5 、单态设计模式(背下来)6、方法重载方法重载是静态多态(编译时的多态),是指一个类中可以有多个方法具有相同的名字,但这些方法的参数必须不同:参数的个数不同,或者参数的类型不同。(注意:不能单靠返回值判断重载)例:public void info(String name, double count)public void info(String name, int count)7、this(1)区分成员变

13、量和局部变量成员变量在整个类内有效,局部变量仅在方法内有效。在方法体中声明的变量以及方法的参数称作局部变量,方法的参数在整个方法内有效,方法内定义的局部变量从它定义的位置之后开始有效。如果局部变量的名字与成员变量的名字相同,则成员变量被隐藏,即这个成员变量在这个方法内暂时失效。这时如果想在该方法内使用成员变量,成员变量前面的“this.”就不可以省略(2)在一个构造方法里调用其他重载的构造方法此外,若要在一个构造方法里调用其他重载的构造方法,不是用构造方法名,而是用this(参数列表)的形式,而且必须是第一条语句。例如:public class PersonString name;int ag

14、e;Person(String name)this.name = name; /方法内使用成员变量 namePerson(String name , int age)this(name); /构造方法里调用其他重载的构造方法 Person(String name)this.age = age; /方法内使用成员变量 age 8、包1)javac 可以使用参数-d 指定生成的字节码文件所在的目录。如果不使用参数-d, javac 在当前目录生成字节码文件。例如: javac d F:tsinghua1000 MyFile.java将源文件 MyFile.java 生成的全部字节码文件存放到 F:

15、tsinghua1000。2)通过关键字 package 声明包语句,package 语句作为 Java 源文件的第一条语句,指明该源文件定义的类所在的包。每个源文件只能声明一个包。 package 语句的一般格式为:package 包名;如:package sunrise;package .sun; /包名可以是一个合法的标识符,也可以是若干个标识符加“.”分割而成3)使用 import 语句可以引入包中的类。java.lang 不需要用 import 语句导入,因为它自动导入。9、访问权限假设对象 a 是类 A 创建的,现将对象对成员的访问权限总结如下表:(背)例:10、基本数据类型的包装类(会举例子) 装箱:将一个基本数据类型变为包装类,这样的过程称为装箱操作。 拆箱:将一个包装类变为基本数据类型这样的过程称为拆箱操作。 例: Integer i = 30 ; / 自动装箱成 IntegerFloat f = 30.3f ; / 自动装箱成 Floatint x = i ; / 自动拆箱为 intfloat y = f ; / 自动拆箱为 float第五章1、JAV

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 办公文档 > 解决方案

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号