Java程序设计复习资料.docx
第一部分 模拟试题第一题 单项选择题1、在以下说法中,选出最正确的一项为哪一项( )。 A、Java语言是以类为程序的根本单位的 B、Java语言是不区分大小写的 C、多行注释语句必需以/开始 D、在Java语言中,类的源文件名与该类名可以不一样6、在Java语言中,那一个是最根本的元素 A、方法 B、包 C、对象 D、接口7、假设有2个类A与B,A类基于 B类,那么以下描绘中正确的一个是( )。 A、这2个类都是子类或者超类 B、A是B超类的子类 C、B是A超类的子类 D、这2个类都是对方的子类8、运用如下哪个保存字可以使只有在定义该类的包中的其他类才能访问该类 A、abstract B、private C、protected D、不运用保存字9、编译一个定义了3个类与10个方法的Java源文件后,会产生多少个字符码文件,扩展名是什么 A、13个字节码文件,扩展名是.class B、1个字节码文件,扩展名是.classC、3个字节码文件,扩展名是.java D、3个字节码文件,扩展名是.class10、以下属于Java语言的特点的一项为哪一项( )。 A、运算符重载 B、类间多重继承 C、指针操作 D、垃圾回收13、以下关于Java程序构造的描绘中,不正确的一项为哪一项( )。 A、一个Java源文件中可以包括一个package语句B、一个Java源文件中可以包括多个类定义,但是只能有一个public类C、一个Java源文件中可以有多个public类D、源文件名与程序类名必需一样14、以下说法正确的一项为哪一项( )。A、java.1ang.Integer是接口 B、java.1ang.Runnable是类 C、Doulble对象在iava.1ang包中 D、Double对象在java.1ang.Object包中15、以下关于类、包与源文件的描绘中,不正确的一项为哪一项( )。 A、一个包可以包含多个类 B、一个源文件中,可能有一个公共类C、属于同一个包的类在默认状况下可以互相访问 D、系统不会为源文件创立默认的16、以下关于类、包与源文件的说法中,错误的一项为哪一项( )。 A、一个文件可以属于一个包 B、一个包可包含多个文件C、一个类可以属于一个包 D、一个包只能含有一个类19、Java语言是以哪一种语言为根底的 A、Basic B、Smalhalk C、C D、C+20、以下选项中,不属于JDK文件书目中的子书目的是( )。 A、bin子书目 B、include子书目 C、jre D、lib子书目21、以下选项中,不属于java核心包的一项为哪一项( )。 A、javax.swing B、java.io C、java.util D、java.1ang22、以下属于Java核心包的一项为哪一项( )。 A、javax.naming B、javax.rmi C、javax.sound D、java.math24、以下关于注释语句的描绘中,正确的一项为哪一项( )。 A、以/开始的是多行注释语句 B、以/*开始,*/完毕的是单行注释语句C、以/*开始,*/完毕的是可以用于生成扶植文档的注释语句 D、以/*开始,*/完毕的是单行注释语句25、对于类的说法中,不正确的一项为哪一项( )。 A、一般类体的域包括常最、变量、数组等独立的实体 B、类中的每个方法都由方法头与方法体构成C、Java程序中可以有多个类,但是公共类只有一个 D、java程序可以有多个公共类26、定义类时,不行能用到的保存字是( )。A、private B、class C、extends D、implements27、以下关于类与对象的描绘中,不正确的一项为哪一项( )。 A、现实世界中,可以把每件事物都看做是一个对象B、一组对象构成一个程序,对象之间通过发消息通知彼此该做什么C、有共同属性的对象可以抽象为一个类D、一个类只能实例化一个对象28、以下说法中,不止确的一项为哪一项( )。 A、Java程序有两类:Application与Applet B、类的方法只能由public修饰C、面对对象的程序设计的优点有:可重用性、可扩展性、可管理性D、Java语言通过接口支持多重继承29、定义主类的类头时可以运用的访问限制符是( )。 A、public B、protected C、private D、private protected30、以下描绘中,不正确的选项是( )。 A、Java不支持多线程 B、一个Java源程序中不允许有多个公共类C、Java程序可以划分为两大类:Application与Applet D、Java通过接口支持多重继承31、java语言的类间的继承关系是( )。 A、多重的 B、单重的 C、线程的 D、不能继承32、以下哪个不是面对对象程序设计方法的特点 A、抽象 B、继承 C、多态 D、构造化33、以下描绘中不正确的一项为哪一项( )。A、Java是纯面对对象语言,不兼容以往的任何语言 B、c+不是纯面对对象的,它兼容c语言C、在1ava语言中,运用对象时必需先声明 D、Java语言与c+一样有指针35、以下整型的最终静态属性i的定义中,正确的选项是( )。A、final i; B、static int i; C、static final int i=234:D、finall float i=3.14f;36、以下语句中,正确的给出初始值为222.111的单精度浮点数f的定义的一个是( )。A、float f=222.111f:B、float f=222.111; C、float f=222.111d D、float f=222.111;37、以下关于数据类型的类包装的说法中,不正确的一个是( )。 A、char类型被包装在Character类中 B、int类型被包装在Integer类中C、包装类有己的常用方法与常数 D、包装类可以被其他的类继承38、以下关于浮点型数据的说法中,不正确的一个是( )。 A、浮点型数据属于实犁数据 B、浮点型数据由数据与小数组成C、浮点型数据小数位数越少越精确 D、浮点数据包括实型常量与实变量39、现有一个双精度浮点变量声明为double dValue;以下赋值语句不正确的一个是( )。 A、dValue=Fhoat.POSITIVE_INFINITY; B、dValue=Float.NaN;C、dValue=Double.POSITIVE_INFINITY; D、dValue=(double)|true;40、现有2个byte类型的变量bb1=126、bb2=5,当执行bbl=(byte)(bb1+bb2);语句之后,bb1的值应当是( )。 A、-128 B、131 C、-125 D、语句在编泽中出错41、如今有一个int类型的变量a与一个char类型的变量b,关于它们之间类型转换的说法中,正确的一个是( )。 A、a必需性制转换为b B、a可以自动转换为b C、b必需强迫转换为a D、它们不行以互相转换42、以下关于short类型数据的说法中正确的一个是( )。 A、short类型数据的长度为8位 B、short类型只能动转换为byte类犁C、short类型被包装在类java.1ang.Character中 D、short类型存储数据的依次是先高后低43、以下单精度浮点数fValue的赋值语句中,不正确的一个是( )。 A、fValue=(double)-23.234f; B、fValue=(char)-12.34f;C、fValue=(char)-56.78d; D、fValue=(int)23.234f;44、现有一个char类型的变量CC与一个int类型的变量ii,以下语句中不正确的一个是( )。 A、 CC=d+11: B、CC=(char)(CC+ii);C、 CC=(char)11.23d; D、CC=CC+(char)ii;char类型相加可能会丢失精度45、以下关于byte类型的说法中,正确的一个是( )。 A、byte类型的长度为8位 B、byte类型可以自动转换为全部的简洁类型C、128是合法的byte类型数值 D、byte存储依次是从高到低46、以下说法中错误的一个是( )。 A、$1_abc是合法的Java标识符 B、部分变量必需先声明后运用C、void是合法的Java保存字 D、在Java中,类不是用标识符命名的47、以下标识符中,正确的选项是( )。 A、1_Back B、$_Money C、$-money D、2-Foward48、以下标识符中,合法的一个是( )。 A、$#!$ B、$-$ C、2$2 D、$22$49、以下说法中,正确的一个是( )。 A、接口属于复合数据类型 B、接口属于简洁数据类型C、标识符的总的字符个数是有限的 D、标识符就是保存字50、设有类型定义short i=32;long j=64;下面赋值语句中不正确的一个是( )。 A、j=i; B、i=j; C、i=(short)j; D、j=(long)i;51、以下字符常量中不合法的一个是( )。 A、an B、r C、t D、¥52、以下数据表示十六进制数的一个是( )。 A、02l B、123 C、23 D、0xa3453、现有1个char类型的变量cl=66与1个整型变量i2=2;与执行c1=cl+(char)i2;语句之后,cl的值应当是( )。 A、 d B、D C、68 D、语句在翻译时出错54、以下关于Unicode-字符的说法中,不正确的一项为哪一项( )。 A、Unicode字符集比ASII字符集丰富 B、Unicode字符是16位无符号数C、字符常量a以八进制数表示为142 D、字符常量a以八进制数表示为14l55、以下哪一个是合法的char类型数据( ) A、14l B、rn C、u00 D、u0xC056、以下说法中,正确的一项为哪一项( )。 A、字符串“abce的长度是6 B、False是Java的保存字C、324.23L代表单精度浮点数 D、False是合法的Java标识符58、以下数据中是八进制数的一个是( )。 A、0X214 B、231 L C、00 D、1059、以下哪个属于java语言的保存字 A、$_final B、long C、size D、union60、现有一个int类型的整数与一个double类型的浮点数,当它们之间做了加法运算之后,得到的结果类型应当是( )。 A、int类型 B、double类型 C、float类型 D、long类型61、以下关于float类型的说法中,正确的一个是( )。 A、float类型不能自动转换为其他的简洁类型 B、float类型可以自动转换为double类型C、float类型与long类型在计算机中占的存储空间一样大 D、3.342E2D是合法的float类型数值。63、以下Java语句中,不正确的一个是( )。 A、Double dValue=(float)1233.213f; B、double dValue=(float)1.213E2f;C、char ch=(char)-1; D、char ch=66:64、以下哪一个语句是合法的 A、byte=128; B、Boolean=true: C、long l=0x23EFL; D、double=0.1453d:65、以下的变量定义语句,合法的是( )。 A、float_*5=123.456F; B、byte $_bl=156782; C、int_long_=324233L; D、double a=Double.MAX_ VALUE:66、以下关于类型转换的说法中,正确的一项为哪一项( )。 A、double类型可以自动转换为int类型 B、double类型只能强迫转换为int与long类型C、double类型可以通过强迫转换为boolean类型 D、double不行以自动转换为int类型67、以下哪一个是合法的标识符 A、int B、t C、0xeeee D、integer68、以下哪一个不是合法的标识符( ) A、INTEGER B、Char C、u0002 D、Void69、数Float.MAX_VALUE是由哪个包装类供应的( ) A、java.1ang.Integer B、java.1ang.Long C、java.1ang.Float D、java.1ang.Double70、设有定义int a=12;那么执行以下语句后,a的值为( )。a*=12; A、144 B、12 C、24 D、071、算术表达式1+2/3-4*5的值为( ) A、1 B、-19 C、-5 D、073、整型变量a、b定义如下,表达式+a= =b的值是( )。int a=3;int b=4; A、 4 B、3 C、1 D、以上均不正确74、设有定义int x=5;那么执行以下语句后,x的值为( )。X*=x+5; A、10 B、15 C、20 D、2575、执行如下语句之后,输出的结果是( )。public class ex6public static void main(String args) int x= -6,Y=6; x=x+Y-; System.out.println(x); A、12 B、-12 C、-1 D、076、以下语句序列执行后,输出的结果是( )。public class ex7public static void main(String args) int a=13; a=a/5; System.out.println( a); A、1 B、13 C、55 D、1577、执行以下程序段之后,输出的结果为( )。 public class ex8 public static void main(Stringargs) int a=5; int b=4; int c=10; c/=+ a(b-); System.out.println( c); A、0 B、5 C、10 D、1578、设有定义int x= A;,那么执行以下语句之后,x的值为( )。 x= A; A、0 B、A C、a D、6579、设i、j为int类型变量,a为float类型变量,以下选项中,正确的赋值语句是( )。 A、i=i+2 B、a=7; C、i+-j; D、a=66.0;80、对于一个三位的十进制正整数x,求它的十位数字Y(Y为整型)的表达式是( )。 A、Y=x/10%10 B、Y=(x-x/10*10)%10 C、Y=x%10 D、Y=x/1081、以下语句序列执行后,输出的结果是( )。public class exl7public static void main(String args) int x=15; x/=x%5+x*(x-x%10); System.out.println(x); A、0 B、5 C、10 D、1582、执行以下代码之后,输出的结果为( )。public class ex23public static void main(String args) int x=7; int y=15; boolean bb=(127 |x)>7&&(-128y)<15; System.out.println(bb); A、 true B、0 C、false D、183、执行以下代码之后,输出的结果为( )。public class ex24public static void main(String args) int a=2; int b=3; int c=7; int d=a>ca:c; d=d>>2>bd:b; System.out.println(d); A、 2 B、3 C、5 D、784、以下语句序列执行后,输出的结果是( )。 public elltS$ex30 public static void main(String args) int al=3; int a2=4; int xl=5; if(+al<a2) xl=x1+l; System.out.println(x1);A、3 B、4 C、5 D、685、下面哪一个是符合Java语言语法的语句 A、int a=0; B、int a=0; C、double i=1.3*%12; D、int a=0;boolean b=a!=7; int b=2; int b=2; int e=12; int 12=7; a=12+b+e!=4; a =a+12=c+b; 86、假设int类型的变量x、y与z,它们的初始值分别为10、20与30,那么布尔表达式x<101&&Y>l0&&z<10的值为( )。 A、false B、true C、1 D、无法推断87、以下代码段执行之后,输出的结果为( )。public ClaSS ex38;public static void main(String args) long a=128; long b=10; double c=1234: boolean bb; bb=c>=a>>b; System.out.println(bb); A、true B、false C、l D、088、下面程序的输出结果是( )。public class ex2public static void main(Stringargs) for(int cnt=0;cnt<10;cnt+) if (cnt= =5) break; System.out.print(cnt);A、0 1 2 3 4 B、6 7 8 9 C、0 1 2 3 4 6 7 8 9 D、590、为了定义3个整型数组a1、a2、aL3,下面声明正确的语句是( )。 A、int Array a1,a2; B、int a1,a2; int a3 =1,2,3,4,5 ; int a3 =1,2,3,4,5; C、int a1,a2 ; D、int a1,a2; int a3=1,2,3,4,5; int a3=(1,2,3,4,5);91、下面的是关于类及其修饰符的一些描绘,不正确的选项是( )。 A、abstract类只能用来派生子类,不能用来创立abstract类的对象B、abstract不能与final同时修饰一个类 C、final类不但可以用来派生子类,也可以用来创立final类的对象 D、abstract方法必需在abstract类中声明,但abstract类定义中可以没有abstract方法92、为了使包ch4在当前程序中可见,可以运用的语句是( )。 A、import ch4.*; B、package ch4.*; C、ch4 imporl,; D、ch4 package;93、在运用interface声明一个接口时,只可以运用哪一个修饰符修饰该接口 D A、private B、protected C、private protected D、public95、假设有定义:byte x=11,22,33,-66;其中0k3,那么对x数组元素错误的引用是( )。 A、x5-3 B、xk C、xk+5 D、x096、main()方法是Java Application程序执行的入口点,关于main()方法的方法头下面哪一项母合法的 A、public static void main( ) B、public static void main(String args )C、public static int main(Stnng arg) D、public void main(Stnng arg )97、假设须要定义一个静态域,应运用哪一个修饰符 A、static B、synchronized C、private D、protected98、以下描绘中不属于 Java异样处理机制优点的一项为哪一项( D )。A、把错误处理代码从正常代码中别离出来 B、按错误类型与差异分组 C、对无法意料的错误的捕获与处理 D、可以处理任何类型的错误第二题 填空题1、Java程序可以分为2大类:_与_。2、Object类是一个特别类,它在编译时由_自动生成,并伴随每一个类。3、System类是一个特别的类,主要供应了标准I/O与 的访问与设置。4、每个Java Application程序可以包括很多方法,但是必需有且只能有一个_方法,统一格式为_ _,它是程序执行的入口。5、程序设计语言分为三类,分别是面对机器的语言,面对_的语言与面对_的语言,Java语言是面对_的语言。6、Java源程序文件与字节码文件的扩展名分别为 与 。7、假设在Java程序中,须要运用java.util包中的全部类,那么应当在程序开始处加上 语句。8、Java语言的_特性实现了模块化与信息隐藏,_特性实现了代码重用,便利用户建立自定义数据类型与创立自定义的类库。9、面对对象技术中的对象具有 ,行为与标识等三个根本属性。10、在Java语言中,由*开始,以*/完毕的注释语句可以用于生成_。11、一般Java程序的类体由两部分组成:一部分是 ,另一部分是 。12、Java语言的类型检查机制要求对于没有返回值的方法,在其前面必需加 进展说明。13、double类整的包装类定义了常值变量 ,运用户口可以通过它来获得负无限值。 14、数据类型为布尔型的保存字是 ,占用的比特数为 。15、作用域是整个类的变量是 ,作用域是其作为参数的整个方法或构造方法的变量是 。16、强迫类型转换通常运用_语句务实观。17、实型常量书写格式包括2种:十进制数格式与 _。18、Java 中的字符运用的是16位的_编码。19、Java语言中的简洁类型的_都被声明为final属性,不行以被其他的子类继承。20、字符串“a的长度是_。 21、Java语言为长整型数据供应了一个常值变量_ _表示长整型的最大值。22、在Java语言中,将位数多的数据类型向位数少的数据类型转换时,只能承受_ _ 。23、在不产生溢出的状况下左移运算相当于_ _运算。24、_ _ _一般可以与布尔逻辑运算符相结合,用于流程限制语句的 _。25、表达式(3 !=0)/(3000<=20)的值为_ _。26、根据操作数的个数分类,关系运算符<=属于_ _。27、移位运算符包括算术右移运算符_ _、算术左移运算符_ _与逻辑右移运算符_ _。28、算术右移一位相当于_ _算术运算。29、在对一个困难表达式进展运算时,根据运算符的优先级次序进展,假设是同级运算符,那么根据其在表达式中的位置_ _的依次进展。30、假设i=10,J=20,k=30,那么表达式!(i<j+k)|!(i+10<=J)的值为_ _。31、表达式76*5的计算结果是_ _。32、在Java语言中,用来支配内存的运算符是_ _。33、在Java语言中,表达式的类型是由_ _及参与运算的_ _的类型共同确定的。34、在二元算术运算表达式的操作数中,一个是float类型,一个是int类型,那么整个表达式的结果的类型应当是_ _类型。35、关系表达式由两个操作数与_ _构成。36、对于运算符/,假设一个操作数为true,那么表达式的值为_ _。37、表达式6533 12的值为_ _。38、在Java语言中,保存字instanceof是_ _运算符。39、表达式12 !=12的值为_ _。40、在比较两个对象的值是否一样时,可以调用_ _方法。41、在循环语句中,反复执行的单一语句或者复合语句被统一称做循环语句的_ _部分。42、在java的循环语句中,执行while循环时,首先是_ _,而执行dowhile循环时,首先是_ _。43、在for循环的迭代部分可以运用_ _来进展多个操作。44、 _ _ 语句的功能包括:跳过循环体内部下面未执行的语句,回到循环体开始位置,接着下次循环。45、多重循环是指往一个循环体内嵌入另一个完好的_ _。46、递归调用的过程可以简洁描绘为:先逐级递归调用,当到达_ _时再逐级返回,直到求出最终解。47、循环语句包括for循环、_ _与_ _。48、 _ _ 语句的功能是从当前方法中退出,返回到调用该方法的地方接着执行下面的语句。49、递归主要包括两个部分:定义_ _与定义如何从同性质的简化问题求出最终问题的解。50、在switch语句中,完成一个case语句块后,假设没有通过break语句跳出switch语句,那么会紧接着执行后面的_ _语句块。51、递归方法虽然可以使程序简洁,但是随着递归层次的_ _,占用系统的内存也会增加。52、假设须要在PhoneCard200类中声明变量additoryFee为浮点双精度型的静态域并初始化其值为01,那么应在类PhoneCard200的定义中参与一条定义语句:_ _。53、_ _ 方法是不能被当前类的子类重新定义的方法。54、当子类的成员变量与父类的成员变量名字一样时,子类的成员变量会_ _父类的成员变量。55、依次执行下面两个语句,输出的结果是:_ _。 String s= “Hello!; System.out.println(S1ength( );56、在Java语言中,表达多态性有两个方面:_ _与_ _。57、在java个类的内部嵌套定义的类称为_ _。59、构造方法是类中的一种特别方法,它用来定义对象的_ _。60、抽象类不能_ _。65、用户定义异样是通过扩展_ _类及_ 类来刨建的。66、在Java编程语言中,用_ _, _,_ _语句来处理异样。67、在Java语言中,_ _是依靠以catch语句为标记的 _语句块来实现捕获与处理的。68、由于 系统不能识别与创立用户_ _,所以须要在程序的相宜位置创立_ _,并运用throw语句将该新异样对象抛出。69、Java语言的异样处理机制中_ _子句或_ _子句可省略,但二者不能同时省略。70、假设抛出的异样类的对象不在catch之列,或者catch子句中包含_ _语句,那么执行finally子句中的代码之后返_ _。第三题 简答题1、作用域public,private,p