MOOC Java面向对象程序设计(江苏海洋大学)1001753066 最新慕课完整章节测试答案
第1章 Java概述(1_35_15,施珺)
文章目录
第1章 单元测验
1、单选题:
下列______不是Sun公司提供的Java运行平台。
选项:
A: J2LE
B: J2SE
C: J2EE
D: J2ME
答案: 【 J2LE】
2、单选题:
字节码是______。
选项:
A: 机器码
B: 接近机器码的二进制文件
C: 文本文件
D: 注释文件
答案: 【 接近机器码的二进制文件】
3、单选题:
main方法是Java Application程序执行的入口点,关于main方法的方法头以下哪项是合法的______.
选项:
A: public static int main(String[ ] arg)
B: public static void main()
C: public static void main(String[ ] args)
D: public void main(String arg[ ])
答案: 【 public static void main(String[ ] args)】
4、单选题:
javac的作用是________________。
选项:
A: 将源程序编译成字节码
B: 将字节码编译成源程序
C: 解释执行Java字节码
D: 模拟运行Java小程序
答案: 【 将源程序编译成字节码】
5、单选题:
以下关于Java虚拟机的描述,不正确的是( ) 。
选项:
A: JVM是Java Virtual Machine的缩写。
B: JVM是运行Java 所需的硬件设备。
C: 从底层看,Java虚拟机就是以Java 字节码为指令组的软CPU。
D: Java虚拟机在执行字节码时,把字节码解释成具体平台上的机器指令执行。
答案: 【 JVM是运行Java 所需的硬件设备。】
6、单选题:
下列关于Java 语言特点的叙述中,错误的是()。
选项:
A: Java是跨平台的编程语言
B: Java是面向对象的编程语言
C: Java是面向过程的编程语言
D: Java支持分布式计算
答案: 【 Java是面向过程的编程语言】
7、单选题:
下列选项中,不属于Java语言特点的是()。
选项:
A: 面向对象,解释型
B: 简单,安全高效
C: 多线程,解释型
D: 支持指针操作,多继承
答案: 【 支持指针操作,多继承】
8、单选题:
与其他面对对象语言相比,Java语言突出的特点是()。
选项:
A: 解释执行,与平台无关
B: 支持动态联编
C: 支持多重继承
D: 支持网络通信
答案: 【 解释执行,与平台无关】
9、单选题:
Java编译器会将Java程序转换为一种代码,该代码叫()。
选项:
A: 机器代码
B: 字节码
C: 字符码
D: 源程序
答案: 【 字节码】
10、单选题:
下列选项中,能将Java源程序编译为字节码的命令是()。
选项:
A: javac
B: javah
C: java
D: javap
答案: 【 javac】
11、单选题:
命令java.exe的作用是( )。
选项:
A: 调试Java代码
B: 将字节码编译成源程序
C: 将源程序编译成字节码
D: 解释执行Java字节码
答案: 【 解释执行Java字节码】
12、单选题:
下列叙述中,正确的是()。
选项:
A: 源文件名与public 类名可以不相同
B: 源文件中public 类的数目不限
C: 源文件的扩展名为.Java
D: Java 语言的标识符是区分大小写的
答案: 【 Java 语言的标识符是区分大小写的】
13、单选题:
安装好JDK后,在其bin目录下有许多exe可执行文件,其中java.exe命令的作用是以下哪一种?
选项:
A: Java文档制作工具
B: Java编译器
C: java反汇编
D: Java解释器
答案: 【 Java解释器】
14、判断题:
一个Java源文件中可以有多个类,但只能有一个类是public的。
选项:
A: 正确
B: 错误
答案: 【 正确】
15、判断题:
JDK和JRE的功能是完全一样的。
选项:
A: 正确
B: 错误
答案: 【 错误】
16、判断题:
一个Java源文件中包括的public 类最多1个。
选项:
A: 正确
B: 错误
答案: 【 正确】
17、判断题:
目前,Java的许多集成开发环境,大多是以Sun公司提供的JDK开发工具集为基础的。
选项:
A: 正确
B: 错误
答案: 【 正确】
18、判断题:
字节码文件是与平台无关的二进制码,执行时由解释器解释成本地机器码。
选项:
A: 正确
B: 错误
答案: 【 正确】
19、判断题:
Java语言中,程序封装的最小单位是类。
选项:
A: 正确
B: 错误
答案: 【 正确】
20、判断题:
Applet小程序是能够嵌入在浏览器中运行的Java类。
选项:
A: 正确
B: 错误
答案: 【 正确】
21、判断题:
一个Java源文件中包括的public类定义最少1个。
选项:
A: 正确
B: 错误
答案: 【 错误】
随堂测验1
1、单选题:
与其它面向对象语言相比,Java语言突出的特点是()
选项:
A: 解释型,与平台无关
B: 支持动态联编
C: 支持多重继承
D: 支持网络通信
答案: 【 解释型,与平台无关】
2、单选题:
下列选项中,不属于Java语言特点的是()
选项:
A: 解释型
B: 动态性
C: 抽象
D: 面向对象
答案: 【 抽象】
随堂测验2
1、单选题:
Java 的反汇编命令是()
选项:
A: javac
B: javap
C: java
D: jdb
答案: 【 javap】
2、单选题:
安装好JDK后,在其bin目录下有许多exe可执行文件,其中java.exe命令的作用是以下哪一种?
选项:
A: Java文档制作工具
B: Java解释器
C: Java编译器
D: java反汇编
答案: 【 Java解释器】
随堂测验3
1、单选题:
Java编译器会将Java程序转换为一种代码。该代码是()
选项:
A: 与硬件相关的机器代码
B: 八进制的字节码
C: 十六进制的字节码
D: 二进制的字节码
答案: 【 二进制的字节码】
2、单选题:
下列选项中,能将Java源程序编译为字节码的命令是()
选项:
A: javac
B: javah
C: java
D: javap
答案: 【 javac】
3、单选题:
Java语言中,程序封装的最小单位是()
选项:
A: 方法
B: 文件
C: 类
D: 包
答案: 【 类】
随堂测验4
1、单选题:
下列关于Java 源程序结构的论述中,正确的是()
选项:
A: 一个源文件包括的public 类最多1个
B: 一个源文件包括的public类定义最少1个
C: 一个源文件包括的类定义最多1个
D: 一个源文件包括的接口定义最多1个
答案: 【 一个源文件包括的public 类最多1个】
2、单选题:
如果用户定义的Applet类中包含main()方法,则下列陈述中正确的是()
选项:
A: 该Applet程序可以通过编译,但运行时出错
B: 该Applet程序可以通过编译,并且能够正常运行
C: Applet小程序与Application程序中都应该有一个main()方法
D: 该Applet程序将出现编译错误
答案: 【 该Applet程序可以通过编译,并且能够正常运行】
第2章 Java语言基础(3_28_23,陈艳艳)
第2章 单元测验
1、单选题:
下列变量定义中,正确的是()
选项:
A: char ch = “12”;
B: double d = 2.5;
C: float f=0.5;
D: boolean k=1;
答案: 【 double d = 2.5;】
2、单选题:
若有 int x = 3 , y = 6 ; 则( x++ ) *( ++ y )的值是( )。
选项:
A: 24
B: 28
C: 21
D: 18
答案: 【 21】
3、单选题:
下列代码段执行后,s的值为( ) int[] a = {1,2,3,4,5}; int s = 0; for(int i = 0 ; i < 5 ; i++) if( i % 2 ==0) s += a[i];
选项:
A: 0
B: 6
C: 15
D: 9
答案: 【 9】
4、单选题:
下列代码段执行后,f的值为()int x=12,f;f = 0;for (int i = 2;i<x;i++) if( x % i==0 ) f=f+i;
选项:
A: 15
B: 12
C: 66
D: 16
答案: 【 15】
5、单选题:
下列选项中,不属于Java关键字的是()。
选项:
A: Method
B: super
C: interface
D: this
答案: 【 Method 】
6、单选题:
下列选项中,编译时会出现错误的是()。
选项:
A: double $ d = 6.18 ;
B: int _i = 100 ;
C: boolean 1_flag = true ;
D: float F1= 1.0 f ;
答案: 【 boolean 1_flag = true ; 】
7、单选题:
使表达式 x % 2 = = 0 && x > 50 || x < 2 0的值为false的选项是()。
选项:
A: x = 15
B: x = 18
C: x = 60
D: x = 85
答案: 【 x = 85 】
8、单选题:
下列运算符中,优先级最高的是()。
选项:
A: &&
B: ==
C: ++
D: +=
答案: 【 ++】
9、单选题:
下列代码段执行后,a的值为()。float x=2.4f;int a=0;switch((int) x) { case 1: a++; case 2: a+=2; case 3: a+=3;}
选项:
A: 3
B: 5
C: 6
D: 1
答案: 【 5】
10、单选题:
下列代码段执行后,n的值为()。 int f = 1,n = 0; while(true){ f = f * 2; n++; if ( f >= 128) break; }
选项:
A: 3
B: 8
C: 5
D: 7
答案: 【 7】
11、单选题:
下列程序的运行结果是()。 public class Test {
public static void main (String[] args) {
int count = 0 ;
for( int i = 1 ; i < 5 ;i + = 2)
for( int j = 1 ; j<= 10 ; j += 3)
count ++ ;
System .out .print (count ) ;
}
}
选项:
A: 10
B: 40
C: 8
D: 0
答案: 【 8】
12、单选题:
下列语句执行后,i的值为()。String str = “rook”n”roll”;
String str1 = “””;
int i = str.indexOf(str1);
选项:
A: 4
B: 7
C: 6
D: 5
答案: 【 4】
13、单选题:
下列程序段执行后的输出结果是()。int [][] b = {{1, 2, 3}, {4, 5},{6}};
int sum=0;
for(int i = 0;i<b.length;i++) {
for(int j = 0;j<b[i].length;j++) {
sum += b[i][j];
}
}
System.out.println(sum);
选项:
A: 6
B: 28
C: 21
D: 9
答案: 【 21】
14、单选题:
下列代码段执行后,k的值为()。int x =4, y = 5;int k= --x*y++;
选项:
A: 18
B: 15
C: 20
D: 24
答案: 【 15】
15、单选题:
下列代码段执行后,k的值为()。int x = 12,y = 15,k;
for(k = x;k<=x*y;k=k+x)
if(k % x==0 && k % y==0)
break;
选项:
A: 60
B: 180
C: 12
D: 15
答案: 【 60】
16、单选题:
下列代码段执行后,k的值为()。int a = 15,b = -5, k;
if (a > 0 && a < 10 )
if (b > 0)
k = 1;
else
k = 2;
else
if (b > 0)
k = 3;
else
k = 4;
选项:
A: 2
B: 1
C: 4
D: 3
答案: 【 4】
17、单选题:
下列选项中,可实现无限循环的语句是()。
选项:
A: while( true ) { }
B: for ( ) { }
C: while ( 1 ) { }
D: while ( ! 0 ) { }
答案: 【 while( true ) { } 】
18、单选题:
若有语句 s ="java " ; 则查找 s 中字母 a 最后出现位置的语句是()。
选项:
A: s.lastIndexOf('a');
B: indexOf(s ,'a') ;
C: charAt( 2 ) ;
D: s .indexOf ('a');
答案: 【 s.lastIndexOf('a');】
19、单选题:
下列变量定义中,错误的是()。
选项:
A: int x = 3;
B: Boolean b = 1;
C: String s = “Hello”;
D: double f = 2.5;
答案: 【 Boolean b = 1; 】
20、单选题:
下列运算符中,属于一元运算符的是()。
选项:
A: ,
B: &
C: |
D: !
答案: 【 !】
21、单选题:
下列选项中,不属于位运算符的是()。
选项:
A: ^
B: >>
C: |
D: ++
答案: 【 ++】
22、单选题:
下列修改x的表达式中,与其他选项意义不同的是()。
选项:
A: x + 1
B: x = x + 1
C: ++x
D: x++
答案: 【 x + 1 】
23、单选题:
下列能正确定义二维浮点数数组的是()。
选项:
A: float f[7,7] = new float[][];
B: float f[][] = new float[7,7];
C: float f[][] = new float[7][7];
D: float f[7][7] = new float[][];
答案: 【 float f[][] = new float[7][7]; 】
24、单选题:
下列给整型二维数组进行赋值的语句中,错误的是()。
选项:
A: int i[][] = {{0}, {1,2}, {3, 4}};
B: int i[][] = {{0}, {1,2, 3, 4}};
C: int i[2][2] = {{1,2}, {3, 4}};
D: int i[][] = {{1,2}, {3, 4}};
答案: 【 int i[2][2] = {{1,2}, {3, 4}}; 】
25、单选题:
选项:
A: 0
B: 1
C: 3
D: 2
答案: 【 1】
26、单选题:
选项:
A: LANGUAGE
B: JAVALANGUAGE
C: ANGUA
D: JAVA
答案: 【 ANGUA】
27、单选题:
下列语句执行后的结果是()。int [][] intArray = {{1,2,3},{4,5}};System.out.println(intArray[0].length + “,”+ intArray[1].length);
选项:
A: 3, 2
B: 3,3
C: 5,5
D: 2,2
答案: 【 3, 2 】
28、单选题:
下列语句执行后,i的值为()。String str = “rook”n”roll”;String str1 = “””;int i = str.indexof(str1);
选项:
A: 4
B: 7
C: 6
D: 5
答案: 【 4 】
29、单选题:
下列给字符串二维数组进行赋值的语句中,错误的是()。
选项:
A: String s[ ] [ ] = new String [ ] [ ] { { “One “ , “ Two “ }, { “ Three “ , “ Four “ } } ;
B: String s[ ] [ ] = { { “ One “ , “Two “},{ “ Three “ , “ Four “ } } ;
C: String s[ ] [ ] = new String [ ] [ ] { { “Zero”} , { “ One ” , “Two” , “ Three” , “ Four” } } ;
D: String s[ 2] [2 ] = { { “ One ” , “Two”},{“ Three” , “ Four” } } ;
答案: 【 String s[ 2] [2 ] = { { “ One ” , “Two”},{“ Three” , “ Four” } } ; 】
30、单选题:
语句 System.out.println("Hello".equals("hello")?"true":"false"); 的显示结果为( )。
选项:
A: Hello
B: hello
C: false
D: true
答案: 【 false】
31、单选题:
下列选项代码段执行后输出结果是()。 String str1 = “ 1234” ; String str2 = str 1 .replace ( “ 34”, “ 43”) ; System .out .println ( str1 + “ ” + str 2) ;
选项:
A: 1 2 3 4 1 2 2 1
B: 1 2 3 4 3 4 4 3
C: 1 2 3 4 1 2 3 4
D: 1 2 3 4 1 2 4 3
答案: 【 1 2 3 4 1 2 4 3】
32、单选题:
下列能表示字符串s1长度的是()。
选项:
A: s1.size()
B: s1.size
C: s1.length()
D: s1.length
答案: 【 s1.length() 】
33、单选题:
选项:
A: true, true
B: false, false
C: true,false
D: false, true
答案: 【 false, true】
34、单选题:
下列代码执行时,产生的异常是()。double[] dArray = new double[10];dArray[20] = 3.00;
选项:
A: DividedByZeroException
B: ArithmeticException
C: ArrayIndexoutofBoundsException
D: NullPointerException
答案: 【 ArrayIndexoutofBoundsException】
35、单选题:
选项:
A: s=
B: “s=”
C: s=null
D: s=s
答案: 【 s=null 】
36、单选题:
下列代码执行时,产生的异常是()。 String s = null; s.concat(“abc”);
选项:
A: EOFException
B: NullPointerException
C: IOException
D: ArithmeticException
答案: 【 NullPointerException】
37、单选题:
下列方法名的定义中,符合Java 命名约定的是 。
选项:
A: public void _printString( )
B: public void $printString ( )
C: public void printString ( )
D: public void PrintString ( )
答案: 【 public void printString ( )】
38、单选题:
在Java语言中,被称为内存分配的运算符是______。
选项:
A: new
B: instanceof
C: [ ]
D: ( )
答案: 【 new】
39、单选题:
下列代码段执行后,x,y的值分别为______。 int x = 3,y = 1; boolean t = ( x++ > y ) || ( y++ >1);
选项:
A: 4 2
B: 3 2
C: 4 1
D: 3 1
答案: 【 4 1】
40、单选题:
阅读下面程序:import java.io.*;public class TypeTransition{public static void main(String args[]){char a=’h’;int i=100;int j=97;int aa=a+i;System.out.println("aa="+aa);char bb=(char)j;System.out.println("bb="+bb);}}如果输出结果的第二行为bb=a,那么第一行的输出结果是 。
选项:
A: aa=I
B: aa=204
C: aa=v
D: aa=156
答案: 【 aa=204】
41、单选题:
switch (expression ) 语句中,表达式expression不允许的类型是______。
选项:
A: byte
B: int
C: char
D: boolean
答案: 【 boolean】
42、单选题:
下列选项中,循环会无限执行的是______。
选项:
A: int i = 1 ; while ( i < 10) System .out .print( “ ” + i) ;
B: for( int i = 1 ; i < 10 ;i ++) System .out .print( “ ” + i);
C: for( int i = 10 ; i > 0 ;i --) System .out .print( “ ” + i);
D: int i = 1 ; while (true) { System .out .print( “ ” + i); i ++ ; if ( i > 5) break ;
答案: 【 int i = 1 ; while ( i < 10) System .out .print( “ ” + i) ;】
43、单选题:
若已有下列定义,则值为4的表达式是______。int []a = {1,2,3,4,5,6,7,8,9,10};char c = ‘a’, d, g;
选项:
A: a[‘d’ – ‘c’]
B: a[g -c]
C: a[‘d’ -c]
D: a[4]
答案: 【 a[‘d’ -c]】
44、单选题:
下列代码段执行后的结果是______。int[] a={6,8,3,1,2};int j=4;for(int i=0; i<2; i++) a[i] = a[j--];for(int i=0; i<5; i++) System.out.print(a[i]+ “ ”);
选项:
A: 1 2 3 6 8
B: 2 1 3 8 6
C: 2 1 3 1 2
D: 1 2 3 1 2
答案: 【 2 1 3 1 2】
45、单选题:
下列程序的运行结果是______。public class Person {static int arr[ ]=new int[10];public static void main(String args ) { System.out.println(arr[9]);}}
选项:
A: 输出零
B: 编译时正确,运行时将产生错误
C: 输出空
D: 编译时将产生错误
答案: 【 编译时正确,运行时将产生错误】
46、单选题:
下列语句执行后,s的值为______。String greeting=“Hello,everybody!”;String s=greeting.substring(0,4);
选项:
A: Hell
B: llo
C: ello
D: Hello
答案: 【 Hell】
47、单选题:
下列代码执行后,a的值是______。String str = “Communication”;char a = str.charAt(4);
选项:
A: r
B: null
C: 空格
D: u
答案: 【 u】
48、单选题:
以下______表达式是不合法的。
选项:
A: String x="Hello"; int y=9; x+=y;
B: String x="Hello"; int y=9; if(x==y) { }
C: String x="Hello"; int y=9; x=x+y;
D: String x=null; int y=(x!=null)&&(x.length()>0) ? x.length() : 0
答案: 【 String x="Hello"; int y=9; if(x==y) { }】
49、单选题:
下列代码段的执行结果是______。int[][] a = {{1,4,3,2}, {8,6,5,7}, {3,7,2,5},{4,18,6,1}};int i0=0,j0=0;int min = a[0][0], max = a[0][0];for (int i=0; i<4; i++){ for(int j=0; j<4; j++){ if(a[i][j]<min){ min = a[i][j]; i0=i; }else{ if (a[i][j]>max){ max = a[i][j]; j0=j; } } }}System.out.println(i0+” ”+j0);
选项:
A: 3 1
B: 3 0
C: 0 0
D: 0 1
答案: 【 0 1】
50、单选题:
下列方法名的定义中,符合Java 命名约定的是 。
选项:
A: public void _printString( )
B: public void $printString ( )
C: public void printString ( )
D: public void PrintString ( )
答案: 【 public void printString ( )】
51、判断题:
Java语言中的数组元素只能是基本数据类型而不能为对象类型。
选项:
A: 正确
B: 错误
答案: 【 错误】
52、判断题:
return语句不是Java语言中的跳转语句。
选项:
A: 正确
B: 错误
答案: 【 错误】
53、判断题:
do……while循环的执行过程是无条件执行循环体一次,再根据判断条件决定是否继续执行循环体。
选项:
A: 正确
B: 错误
答案: 【 正确】
54、判断题:
if(true){int i=100;} System.out.println(i);运行此程序的结果是输出100。
选项:
A: 正确
B: 错误
答案: 【 错误】
55、判断题:
语句“b=2a+2;”是正确的表达式。
选项:
A: 正确
B: 错误
答案: 【 错误】
56、判断题:
语句"Hello".equals("hello");的结果是true。
选项:
A: 正确
B: 错误
答案: 【 错误】
57、判断题:
?:是条件运算符。
选项:
A: 正确
B: 错误
答案: 【 正确】
58、判断题:
Javay语言中,||和|是同一种运算的两种不同形式。
选项:
A: 正确
B: 错误
答案: 【 错误】
59、判断题:
Java语言中,>>和>>>没有区别,都表示右移运算。
选项:
A: 正确
B: 错误
答案: 【 错误】
60、判断题:
print()方法和println()方法的区别在于是否在行末有回车换行。
选项:
A: 正确
B: 错误
答案: 【 正确】
随堂测验1
1、单选题:
下列选项中,不属于Java基本数据类型的是()
选项:
A: String
B: byte
C: short
D: char
答案: 【 String】
2、单选题:
下列变量定义中,正确的是()。
选项:
A: char ch = “12”;
B: double d = 2.5;
C: boolean f=0;
D: Boolean k=1;
答案: 【 double d = 2.5;】
随堂测验2
1、单选题:
逻辑运算符&&表示()运算。
选项:
A: 条件或
B: 异或
C: 条件与
D: 非
答案: 【 条件与】
2、单选题:
使表达式 y % 4==0 && y % 100!=0 || y % 400==0的值为false的选项是()
选项:
A: y=2012
B: y=1020
C: y=1000
D: y=2000
答案: 【 y=1000】
3、单选题:
下列不属于布尔逻辑表达式的是()。
选项:
A: x > 100 || x < 0
B: x = 5
C: x ! = 5
D: x > 60 && x < 100
答案: 【 x = 5】
4、单选题:
下列运算符中,优先级最高的是()。
选项:
A: &&
B: ==
C: ++
D: +=
答案: 【 ++】
5、单选题:
条件运算符是()。
选项:
A: >
B: ?:
C: !
D: +=
答案: 【 ?:】
6、单选题:
下列语句执行后的输出结果是()。 int i = 2, j = 6 ; System .out .println ( ( i + 5) > j);
选项:
A: 0
B: false
C: true
D: 1
答案: 【 true】
7、单选题:
下列代码段执行后,x,y的值分别为()。 int x = 3,y = 1; boolean t = ( x++ > y ) || ( y++ >1);
选项:
A: 4 1
B: 3 2
C: 4 2
D: 3 1
答案: 【 4 1】
随堂测验3
1、单选题:
下列代码段执行后,f的值为()int x=12,f;f = 1;for (int i = 2;i<x;i++) if( x % i==0 ) f=f+i;
选项:
A: 15
B: 12
C: 66
D: 16
答案: 【 16】
2、单选题:
下列选项中,不能实现跳转的语句是()。
选项:
A: return
B: break
C: default
D: continue
答案: 【 default】
3、单选题:
下列代码段执行后,a的值为()。float x=2.4f;int a=0;switch((int) x) {case 1: a++;case 2: a+=2;case 3: a+=3;}
选项:
A: 3
B: 5
C: 6
D: 1
答案: 【 5】
4、单选题:
下列代码段执行后,x的值为()。 int x = 0,y = 10; do{ x +=2; y -=3; }while(y > 0);
选项:
A: 12
B: 10
C: 8
D: 6
答案: 【 8】
5、单选题:
下列代码段执行后,y的值为()。int r,x=28,y=12;while(true){ r = x%y; if(r==0)break; x=y;y=r;
选项:
A: 4
B: 16
C: 12
D: 0
答案: 【 4】
随堂测验4
1、单选题:
下列能正确定义二维浮点数数组的是()。
选项:
A: float f[7,7] = new float[][];
B: float f[][] = new float[7,7];
C: float f[][] = new float[7][7];
D: float f[7][7] = new float[][];
答案: 【 float f[][] = new float[7][7]; 】
2、单选题:
下列给整型二维数组进行赋值的语句中,错误的是()
选项:
A: int i[][] = {{0}, {1,2}, {3, 4}};
B: int i[][] = {{0}, {1,2, 3, 4}};
C: int i[2][2] = {{1,2}, {3, 4}};
D: int i[][] = {{1,2}, {3, 4}};
答案: 【 int i[2][2] = {{1,2}, {3, 4}}; 】
3、单选题:
下列代码段执行后,s的值为()。 int[] a = {1,2,3,4,5}; int s = 0; for(int i = 0 ; i < 5 ; i++) if( i % 2 ==0) s += a[i];
选项:
A: 0
B: 6
C: 15
D: 9
答案: 【 9】
随堂测验5
1、单选题:
下列程序段的运行结果是() String str1 = “Good”; String str2 = “morning”; String str3 = str1.toLowerCase()+str2.toUpperCase(); System.out.println(str3);
选项:
A: Goodmorning
B: gOODmORNING
C: goodmorning
D: goodMORNING
答案: 【 goodMORNING】
2、单选题:
下列语句执行后,s的值为String greeting=“Hello,everybody!”;String s=greeting.substring(0,4);
选项:
A: Hell
B: llo
C: ello
D: Hello
答案: 【 Hell 】
3、单选题:
语句”Hello”.equals(“hello”);的正确执行结果是()。
选项:
A: 0
B: 1
C: false
D: true
答案: 【 false】
4、单选题:
请阅读下面程序public class ExampleStringBuffer{ public static void main (String[] args){ StringBuffer sb = new StringBuffer (“test”); System.out.println(“buffer = ”+sb); System.out.println(“length = ” + sb.length() ); }}程序运行结果中在"length ="后输出的值是()。
选项:
A: 10
B: 20
C: 30
D: 4
答案: 【 4】
第3章 Java面向对象编程(3_13_28,施珺)
第3章 单元测验
1、单选题:
下列关于import语句的说法中,错误的是()
选项:
A: import语句用于引入程序要使用的Java类
B: 程序中可以包括多个import语句
C: 所有程序都至少需要一个import语句
D: Import语句必须写在所有类的定义之前
答案: 【 所有程序都至少需要一个import语句 】
2、单选题:
下列关于Java继承的说法中,正确的是()
选项:
A: 最终类可以作为其他类的父类
B: Java中的类可以有多个直接父类
C: Java中的接口支持多继承
D: 抽象类不能有子类
答案: 【 Java中的接口支持多继承 】
3、单选题:
下列选项中,与成员变量共同构成一个类的是_________。
选项:
A: 运算符
B: 方法
C: 表达式
D: 关键字
答案: 【 方法 】
4、单选题:
下列类中,实现了Set接口的是()
选项:
A: Vector
B: ArrayList
C: LinkedList
D: LinkedHashSet
答案: 【 LinkedHashSet】
5、单选题:
关于被保护控制符protected修饰的成员变量,以下说法正确的是()
选项:
A: 可以被三种类所引用:该类自身、与它在同一个包中的其他类、在其他包中的该类的子类
B: 可以被两种类访问和引用:该类本身、该类的所有子类
C: 只能被同一个包中的类访问
D: 只能被该类自身所访问和修改
答案: 【 可以被三种类所引用:该类自身、与它在同一个包中的其他类、在其他包中的该类的子类 】
6、单选题:
Java语言中,下列说法中正确的是()
选项:
A: 抽象类默认是public类
B: 一个Java类只能继承一个父类,也只能实现一个接口
C: 引用一个类的任何属性或调用其任何方法都必须以这个类的对象名为前缀
D: 无名包中的类不能被其他包中的类引用和复用
答案: 【 无名包中的类不能被其他包中的类引用和复用】
7、单选题:
已知 void method( ); 是父类中定义的一个方法,下面()是子类中重写该方法的正确形式。
选项:
A: int method() { return 0; }
B: void method(){ }
C: private void method(){ }
D: void method(int i){ }
答案: 【 void method(){ }】
8、单选题:
下列叙述中,错误的是()
选项:
A: 父类不能替代子类
B: 子类继承父类
C: 子类能够替代父类
D: 父类包含子类
答案: 【 父类包含子类】
9、单选题:
如果有一个类MyFrame 是Frame 的子类,但它不能被实例化,请写出该类的声明头为()
选项:
A: class MyFrame abstract extends Frame
B: abstract class MyFrame extends Frame
C: abstract class Frame extends MyFrame
D: class Frame abstract extends MyFrame
答案: 【 abstract class MyFrame extends Frame】
10、单选题:
接口中可以包含以下内容()
选项:
A: 静态常量和抽象方法
B: 静态变量和抽象方法
C: 任何变量和抽象方法
D: 任何变量和任何方法
答案: 【 静态常量和抽象方法】
11、单选题:
下面关于类的构造方法的说法中,错误的是()
选项:
A: 构造方法只能有入口参数,而没有返回值
B: 构造方法只能用new运算符调用
C: 构造方法名必须与类名相同
D: 一个类只能有一个构造方法
答案: 【 一个类只能有一个构造方法】
12、单选题:
自定义的异常类可从( )类继承
选项:
A: AWTError
B: Exception 及其子集
C: Virtual Machine Error
D: Error
答案: 【 Exception 及其子集】
13、单选题:
如果要捕获异常,应该采用的子句是()
选项:
A: throw
B: finally
C: try
D: catch
答案: 【 catch】
14、单选题:
若希望类定义中的数据成员被该类所有的对象共享,则需要用到的修饰符是()
选项:
A: static
B: protected
C: abstract
D: public
答案: 【 static】
15、单选题:
下面有关Java语言类的概念中,说法正确的是()
选项:
A: 类及其属性、方法可以同时有一个以上的修饰符来修饰
B: 最终类能派生子类,但最终方法不能被覆盖
C: final类中的属性和方法都要用final修饰符修饰
D: 子类要调用父类的方法,必须使用super关键字
答案: 【 类及其属性、方法可以同时有一个以上的修饰符来修饰】
16、单选题:
继承是面向对象编程的一个重要特征,它可降低程序的复杂性并使代码()
选项:
A: 可读性好
B: 运行更安全
C: 可跨包访问
D: 可重用
答案: 【 可重用】
17、单选题:
Java语言中拥有属性和行为的实体是()
选项:
A: 对象
B: 构造方法
C: 方法
D: 类
答案: 【 对象】
18、单选题:
Java中,隐藏信息的基本机制是()
选项:
A: 多态
B: 继承
C: 封装
D: 抽象
答案: 【 封装】
19、单选题:
下列关于构造方法的描述中,正确的是()
选项:
A: 子类必须通过this调用父类的构造方法
B: 若子类没有定义构造方法,则子类无构造方法
C: 子类不能调用父类的构造方法
D: 子类必须通过super调用父类的构造方法
答案: 【 子类必须通过super调用父类的构造方法】
20、单选题:
下列代码中构造方法的返回类型是()class Village { public static void main( String args [ ]) { Village c =new Village ( ) ; } Village () { System .out .println(“hiding in Village” public class Village {
Village() {
System.out.println(“hiding in Village”) ;
}
public static void main(String args [ ]) {
Village c =new Village();
}
选项:
A: integer
B: String
C: 无
D: null
答案: 【 无】
21、单选题:
对象的特性在类中被表示为变量,称为类的()
选项:
A: 方法
B: 数据类型
C: 属性
D: 对象
答案: 【 属性】
22、单选题:
下列方法中,可以正确加入类SubX中且父类的方法不会被覆盖的是()class X {
public int F( int a, int b ) {
int s;
s=a+b;
return s;
}
}
class SubX extends X{ }
选项:
A: public int F( int a, int b) throws MyException { }
B: public float F(int a, int b, float b=1.0) { }
C: public void F( ) { }
D: int F(int a, int b) { }
答案: 【 public void F( ) { }】
23、单选题:
下列可加入类child 中的方法是 public class Parent {
protected int change ( ) { }
}
class Child extends Parent {
}
选项:
A: private int change ( ) { }
B: abstract int change ( ) { }
C: public int change ( ) { }
D: int change ( ) { }
答案: 【 public int change ( ) { }】
24、单选题:
当方法遇到异常又不知如何处理时,正确的处理方式是( )
选项:
A: 嵌套异常
B: 捕获异常
C: 声明抛出异常
D: 匹配异常
答案: 【 声明抛出异常】
25、单选题:
如果要捕获异常,应该采用的子句是( )
选项:
A: throw
B: finally
C: try
D: catch
答案: 【 catch】
26、单选题:
下列代码段运行输出的结果是( )public void test() {
String s[] = new String[10];
try {
s[9] =“exception”;
}catch (ArrayIndexOutfBoundsException e) {
System.out.println(“exception 1”);
}catch(IOException e){
System.out.println(“exception 2”);
}finally {
System.out.println(“over”);
}
}
选项:
A: over
B: exception 1
C: exception 2
D: exception
答案: 【 over】
27、单选题:
自定义异常类的父类可以是()
选项:
A: Thread
B: VirtuaMachineError
C: Exception
D: Error
答案: 【 Exception】
28、单选题:
运行下面程序时,会产生什么异常?( )public class X7_1_5 {
public static void main(String[] args) {
int[] z = {1,2,3,4};
int p = z[4];
int x = 0;
int y = p/x;
}
}
选项:
A: ArithmeticException
B: ArrayIndexOutOfBoundsException
C: NumberFormatException
D: IOException
答案: 【 ArrayIndexOutOfBoundsException】
29、单选题:
为使下列代码正常运行,应该在下划线处填入的选项是()abstract class Person {
private String name;
public Person (String n) {
name = n;
}
public ____________String get Description();
public String getName() {
return name;
}
}
选项:
A: private
B: abstract
C: final
D: static
答案: 【 abstract】
30、单选题:
下列说法正确的是( )
选项:
A: final 可修饰类、属性、方法
B: 定义抽象方法需有方法的返回类型、名称、参数列表和方法体
C: abstract可修饰类、属性、方法
D: 用final修饰的变量,在程序中可对这个变量的值进行更改
答案: 【 final 可修饰类、属性、方法】
31、单选题:
下面说法不正确的是( )
选项:
A: 抽象类既可以做父类,也可以做子类
B: abstract和final能同时修饰一个类
C: 抽象类中可以没有抽象方法,有抽象方法的类一定是抽象类或接口
D: 声明为final类型的方法不能在其子类中重新定义
答案: 【 abstract和final能同时修饰一个类】
32、单选题:
有关类的说法,正确的是( )
选项:
A: 类具有封装性,所以类的数据是不能被访问的
B: 类具有封装性,但可以通过类的公共接口访问类中的数据
C: 声明一个类时,必须使用 public 修饰符
D: 每个类中必须有 main 方法,否则程序无法运行
答案: 【 类具有封装性,但可以通过类的公共接口访问类中的数据】
33、单选题:
试图编译和运行以下代码的结果是:class Base {
private Base() {
System.out.println(0);
}
public Base(int i) {
System.out.println(i);
}
}
public class Test extends Base {
public Test() {
super(1);
};
public static void main(String argv[]){
Test t = new Test();
}
}
选项:
A: 因为构造方法不能是private的所以不能编译
B: 由于Test的父类的构造器是私有的所以Test不能编译
C: 通过编译,打印出0
D: 通过编译,打印出1
答案: 【 通过编译,打印出1】
34、单选题:
给定以下代码,以下哪句是正确的?public class Test {
private int i = f();
private int j = 10;
private int f() {
return j;
}
public static void main(String args[]) {
System.out.println((new Test()).i);
}
}
选项:
A: 通过编译,打印出0
B: 通过编译,打印出10
C: 由于在main中访问了Test的私有的变量而不能编译
D: 由于成员变量定义初始化时的顺序错误而不能编译
答案: 【 通过编译,打印出0】
35、单选题:
试图编译和运行以下代码的时候会发生什么?public class Q {
public static void main(String argv[]){
int anar[]=new int[5];
System.out.println(anar[0]);
}
}
选项:
A: null
B: 0
C: 5
D: 错误:anar还没有初始化就用了
答案: 【 0】
36、单选题:
给定以下代码,以下哪句是正确的?class TestBed {
TestBed() {}
void f() { System.out.println("f()"); }
public static void main(String[] args) {
TestBed t = new TestBed();
&n