java 期末复习资料.docx
《java 期末复习资料.docx》由会员分享,可在线阅读,更多相关《java 期末复习资料.docx(130页珍藏版)》请在冰豆网上搜索。
java期末复习资料
第一章
1.Java中一个类可以有多个父类。
错
2.每个源程序文件中必须得有一个public类。
错
3.怎样才能给publicstaticvoidmain方法传递字符串数组的第零个元素?
C
A.程序的名字为字符串数组的第零个元素
B.参数个数为字符串数组的第零个元素
C.在程序名后的第一个元素为字符串数组的第零个元素
D.在程序名后的第二个元素为字符串数组的第零个元素
4.以下哪些选项可准确说明publicstaticvoidmain方法中的参数?
AB
A.Stringargs[]
B.String[]args
C.Stringsargs[]
D.Stringargs
5.语法错误是由发现的。
A
A.编译器
B.黑盒测试
C.白盒测试
D.Java虚拟机
E.编辑器
6.以下哪一个是运行时错误的例子?
C
A.忽略了方法体尾部花括号
B.忽略了方法返回值的类型
C.你想输出"goodbye"但输出的是"Hello"
D.Java程序文件名与Java目标文件名不同
E.在语句末忘记了";"
7.当你试图编译运行Test类、并将其传递给Java解释器将会发生什么情况?
B
classTest{
publicstaticvoidmain()
{
System.out.println("hello");}
}
A.该程序将不会通过编译,因为main()的定义不准确
B.该程序会通过编译,但当运行该程序时解释器将会抱怨没有找到它需要的main()方法
C.该程序能通过编译但不能运行,因为Test类不具有public属性
D.能编译运行该程序,但显示器中无任何输出结果
E.该程序将通过编译并且在运行时会输出"hello"
8.假设有一个public类myclass,其中定义了如下的一个main方法
publicstaticvoidmain(Stringparm[]){
System.out.println(parm[0]);
}
如果你试图编译该类,并以以下的方式运行该程序
javamyclasshello
将会发生什么?
D
A.编译时错误:
main的定义不正确B.运行时错误:
main的定义不正确
C.编译通过并输出javaD.编译通过并输出hello
9.编译运行以下代码将会发生什么?
C
1:
publicclassQ11
2:
{
3:
staticStringstr1="mainmethodwithString[]args";
4:
staticStringstr2="mainmethodwithint[]args";
5:
6:
publicstaticvoidmain(String[]args)
7:
{
8:
System.out.println(str1);
9:
}
10:
11:
publicstaticvoidmain(int[]args)
12:
{
13:
System.out.println(str2);
14:
}
15:
}
A.重载了main()方法,会在第6行发生编译时错误
B.重载了main()方法,会在第11行发生编译时错误
C.输出:
"mainmethodwithmainString[]args"
D.输出:
"mainmethodwithmainint[]args"
第二章简单数据类型
填空题
1.字符类型数据占-----位?
答案16
2.一个接口只能包含方法但不能包含变量答案错误
3.运算中,不同类型的数据先转化为同一类型,然后进行运算。
转换从低级到高级。
答案对
4.byte类型能表示的数据范围是-256到256答案错
5.byte类型能表示的数据范围是-127到128答案错误
6.char类型能表示的数据范围是-2x2^16到2x2^16-1答案错
7.实型的缺省数据类型是float型错
8.以下语句的输出结果是0,System.out.println(1>>1); 对
9.简单数据类型的范围是由平台决定的错
10.实型的缺省数据类型是double型对
11.如果在一个负数上执行无符号左移运算,那么其结果总会是负数错
12./运算符通常用于一个数除于另一个数。
对
13.$字符不能出现在变量名的第一个位置。
错
14.%用于计算百分比:
10%20=50错
15.#字符不能出现在变量名的第一个位置对
16.变量名是否可以以“$”字符打头?
对
17.Java的所有保留字都是小写的。
对
18.布尔类型和整型数据是否能进行比较?
错
19.byte类型能表示的数据范围是-128到127对
多项选择题
20.以下表达式哪些不会引起运行时错误?
A."john"+"was"+"here"
B."john"+3
C.3+5
D.5+5.5
答案ABC
21.以下哪些赋值语句合法?
选择所有有效答案
A.longtest=012;
B.floatf=-412;
C.intother=(int)true;
D.doubled=0x12345678;
E.shorts=10;
答案ABDE
22.找出所有的java保留字
A.extends
B.sizeof
C.implements
D.TRUE
E.NULL
答案AC
23.下列哪些是合法的标识符?
A.%fred
B.*fred
C.thisfred
D.2fred
E.fred
答案CE
24.以下哪些不是Java关键字?
A.superclass
B.goto
C.open
D.close
E.integer
答案ACDE
25.以下哪些是逻辑运算符?
A.&
B.||
C.&&
D.|
答案BC
26.以下哪些陈述准确?
A.%用于计算百分比:
10%20=50
B./通常用于一个数除于另一个数
C.#字符不能出现在变量名的第一个位置
D.$字符不能出现在变量名的第一个位置
答案BC
27.以下哪些赋值语句合法?
A.floatf=1/3;
B.inti=1/3;
C.floatf=1.01;
D.doubled=999d;
答案ABD
28.下列标识符中合法的是?
A.$Fred
B.This
C._this
D.instance
E.2for
答案ABCD
29.以下哪些是Java的关键字?
A.sizeof
B.main
C.transient
D.volatile
答案CB
30.以下不合法的标识符为?
A.here:
B._there:
C.this:
D.that:
E.2to1odds:
答案CE
31.以下的位运算的结果哪些准确?
A.128>>1的值为64
B.128>>>1的值为64
C.128>>1的值为-64
D.128>>>1的值为-64
答案AB
32.以下哪一个是合法的标识符
A.2variable
B.variable2
C._whatavariable
D._3_
E.$anothervar
答案BCDE
33.以下哪些是Java的保留字?
A.if
B.then
C.goto
D.while
E.case
答案ACDE
34.以下哪些是有效的语句?
A.System.out.println(1+1);
B.inti=2+'2';
C.Strings="on"+'one';
D.byteb=255;
答案AB
单项选择题I
35.以下的定义语句哪一个不合法?
A.inti=32;
B.floatf=45.0;
C.doubled=45.0;
D.byteb=26;
答案B
36.定义字符a的准确格式为?
A.'a'
B."a"
C.newCharacter(a)
D.\000a
答案A
37.以下哪个是java的关键字?
A.goto
B.malloc
C.extends
D.FALSE
答案C
38.编译以下程序的输出结果为?
publicclassRand{
publicstaticvoidmain(Stringargv[]){
intiRand;
iRand=Math.random();
System.out.println(iRand);
}
}
A.编译时会出错,会指出是类型应该被转换的问题
B.1到10之间的一个随机数
C.0到1之间的一个随机数
D.会出现有关系统无法识别random方法的编译时错误
答案A
39.以下哪一个语句输出-4.0
A.System.out.println(Math.floor(-4.7));
B.System.out.println(Math.round(-4.7));
C.System.out.println(Math.ceil(-4.7))
D.System.out.println(Math.min(-4.7))
答案C
40.以下哪个语句在编译时无出错或警告信息?
A.floatf=1.3;
B.charc="a";
C.byteb=257;
D.booleanb=null;
E.inti=10
答案E
41.编译以下代码的结果是什么?
publicclassTest{
publicstaticvoidmain(Stringargs[]){
intage;
age=age+1;
System.out.println("Theageis"+age);
}
}
A.编译运行但无输出结果
B.编译运行并输出Theageis1
C.编译通过但产生一个运行时错误
D.编译不通过
答案D
42.byte整型类型数据的有效范围是:
A.0-65,535
B.(-128)-127
C.(-32,768)-32,767
D.(-256)-255
答案B
43.以下哪一个是整型数据的范围?
A.-2^15to2^15-1
B.0to2^15
C.-2^31to2^31-1
D.0to2^31
答案C
44.以下哪个是Java的保留字?
A.sizeOf
B.interface
C.THROW
D.BOLEAN
答案B
45.对于Java的简单数据类型,下列叙述中有错误的是?
A.它可以作为一个消息的结果返回
B.它可以是方法参数值的类型
C.它可以是消息的接受者
D.它可以用于比较
答案C
46.以下哪一个是八进制数?
A.0x12
B.32O
C.032
D.(octal)2
E.1
答案C
47.以下哪一个是Java的保留字?
A.NULL
B.new
C.instanceOf
D.wend
答案B
48.如果你编译运行以下代码将会发生什么?
1:
inti=012;
2:
intj=034;
3:
intk=056;
4:
intl=078;
5:
6:
System.out.println(i);
7:
System.out.println(j);
8:
System.out.println(k);
A.输出12,34和56
B.输出24,68和112
C.输出10,28和46
D.编译错误
答案D
49.当你试图编译和运行以下程序,将会发生什么?
publicclassAgg{
staticpubliclongi=10;
publicstaticvoidmain(Stringargv[]){
switch(i)
{
default:
System.out.println("novaluegiven");
case1:
System.out.println("one");
case10:
System.out.println("ten");
case5:
System.out.println("five");
}
}
}
A.编译时错误
B.在"ten"之后输出"five"
C.输出"ten"
D.通过编译,但因为default语句位置上的错误会出现运行时错误
答案A
50.当你试图编译运行以下代码,将会发生什么?
publicclassPvf{
staticbooleanPaddy;
publicstaticvoidmain(Stringargv[]){
System.out.println(Paddy);
}}
A.编译时错误
B.编译并输出false
C.编译并输出true
D.编译并输出null
答案B
51.以下代码的输出结果为?
1:
inti=16;
2:
intj=17;
3:
4:
System.out.println("i>>1="+(i>>1));
5:
System.out.println("j>>1="+(j>>1));
A.输出:
"i>>1=8""j>>1=8"
B.输出:
"i>>1=7""j>>1=7"
C.输出:
"i>>1=8""j>>1=9"
D.输出"i>>1=7""j>>1=8"
答案A
52.以下代码的输出结果为?
1:
inti=45678;
2:
intj=~i;
3:
4:
System.out.println(j);
A.第2行会出现编译时错误,~运算符只能用于布尔类型
B.输出45677
C.输出-45677
D.输出-45679
答案D
53.当你调用以下方法时会发生什么?
1:
voidinfiniteLoop()
2:
{
3:
byteb=1;
4:
5:
while(++b>0)
6:
;
7:
System.out.println("WelcometoJava");
8:
}
A.会引起无限循环
B.输出"WelcometoJava".
C.第5行会出现编译错误,++运算符不能用于byte类型
D.什么都不输出
答案B
54.Byte类型数据的表示范围为?
A.-2^7to2^7-1
B.0to2^7
C.-2^15to2^15
D.-2^15to2^15-1
E.-2^15-1to2^15
答案A
第2章运算符和表达式
判断题
1.Java中只能对方法进行重载。
A.是
B.否
答案B
2.假设X=2、Y=4,那么逻辑表达式(!
(Y>X))的结果为false.
A.是
B.否
答案A
3.假设X=6、Y=7,逻辑表达式(!
(Y==X))的值为true.
A.是
B.否
答案A
多项选择题
4.假设给定以下的类
publicclassZeroPrint{
publicstaticvoidmain(Stringargv[]){
inti=0;
//Here
}
}
在注释语句//Here处替换哪些语句,程序将会输出0
A.System.out.println(i++);
B.System.out.println(i+'0');
C.System.out.println(i);
D.System.out.println(i--);
答案ACD
5.以下哪些没有编译错误?
A.charc='1';System.out.println(c>>1);
B.Integeri=Integer("1");System.out.println(i>>1);
C.inti=1;System.out.println(i<<<1);
D.inti=1;System.out.println(i<<1);
答案AD
6.以下哪些表达式不合法?
A.(true&true)
B.(4&5)
C.(intmyInt=0>3)
D.floatmyFloat=40.0;
E.booleanb=(boolean)99;
答案CDE
单项选择题
7.以下代码的输出结果是?
1:
System.out.println(""+2+3);
2:
System.out.println(2+3);
3:
System.out.println(2+3+"");
4:
System.out.println(2+""+3);
A.第3行会出现编译时错误
B.输出23,5,5和23
C.输出5,5,5和23
D.输出23,5,23和23
答案B
8.编译运行以下将会发生什么?
1:
publicclassQ10
2:
{
3:
publicstaticvoidmain(String[]args)
4:
{
5:
inti=10;
6:
intj=10;
7:
booleanb=false;
8:
9:
if(b=i==j)
10:
System.out.println("True");
11:
else
12:
System.out.println("False");
13:
}
14:
}
A.在第9行将会发生编译时错误
B.在第9行将会发生运行时例外
C.输出:
"True"
D.输出:
"Fasle"
答案C
9.当你试图编译运行以下代码,将会发生什么?
publicclassInc{
publicstaticvoidmain(Stringargv[]){
Incinc=newInc();
inti=0;
inc.fermin(i);
i=i++;
System.out.println(i);
}
voidfermin(inti){
i++;
}
}
A.编译时错误
B.输出2
C.输出1
D.输出0
答案D
10.运算符&&运用于哪个数据类型
A.int
B.long
C.double
D.boolean
答案D
11.A、B、C是int类型的变量,以下程序片段中哪一个能使得变量A与B的值得到互换
A.C=A;A=B;B=C
B.C=A;B=A;A=B
C.A=A+B;B=A-B;A=A-B;
D.C=B;B=A;C=A;
答案A
12.以下哪一个代码可在屏幕上输出'test'?
A.intx=10.0;if(x==10.0){System.out.println("test");}
B.intx=012;if(x==10.0){System.out.println("test");}
C.intx=10f;if(x==10.0){System.out.println("test");}
D.intx=10L;if(x==10.0){System.out.println("test");}
答案B
13.运行以下代码片段的结果时:
booleanflag=false;
if(flag=true){
System.out.println("true");
}else{
System.out.println("false");
}
A.输出true
B.输出false
C.将会产生一个例外
D.什么都不会发生
答案A
14.以下操作的结果是什么?
System.out.println(4|3);
A.6
B.0
C.1
D.7
E.15
答案D
15.以下哪一个语句正确?
A.System.out.println(-1>>>2);将输出大于10的结果
B.System.out.println(-1>>>2);将输出一个正数
C.System.out.println(2>>1);将输出数字1
D.System.out.println(1<<<2);将输出数字4
答案ABC
第2章控制语句
判断题
1.switch语句中的default语句在任何情况下都要被执行一次。
2.在switch语句中,switch()中的参数可以是一个变量,只要它的类型和int类型兼容。
3.在for循环中使用continue语句,将会使程序的执行跳出循环体,继续执行循环语句后面的第一条语句。
4.下列语句是否合法?
inti;
for(i=4;intt=6;i<0;i++)
5.if结构中如果没有花括号是否能通过编译?
6.在Switch语句中,当表达式的值与任一case子句中的值都不匹配时,程序执行default后面的语句。
多项选择题
7.以下语句哪些能够被Java编译器接受:
A.if(2==3)System.out.println("Hi");
B.if(2=3)System.out.println("Hi");
C.if(true)System.out.println("Hi");
D.if(2!
=3)System.out.println("Hi");
E.if(aString.equals("hello"))System.out.println("Hi");
答案
8.以下哪一个代码片段在编译时没有错误
A.inti=0;if(i){System.out.println("Hello");}
B.booleanb=true;booleanb2=true;if(b==b2){System.out.println("Sotrue");}
C.inti=1;intj=2;if(i==1||j==2)System.out.println("OK");
D.inti=1;intj=2;if(i==1&|j==2)System.out.println("OK");
答案
9.outer:
for(int