大学MOOC Java程序设计(常州信息职业技术学院)1461476167 最新慕课完整章节测试答案
第1周 Java语言基础
文章目录
1.1 随堂测试
1、判断题:
Java 语言是一个面向过程的程序设计语言。
选项:
A: 正确
B: 错误
答案: 【 错误】
2、判断题:
Java语言“一次编写,到处运行”。
选项:
A: 正确
B: 错误
答案: 【 正确】
3、判断题:
Java虚拟机(JVM)是运行Java程序的软件环境。
选项:
A: 正确
B: 错误
答案: 【 正确】
4、判断题:
jre文件夹用来存放Java运行环境。
选项:
A: 正确
B: 错误
答案: 【 正确】
5、判断题:
Java源文件编译成exe文件,双击后可以运行。
选项:
A: 正确
B: 错误
答案: 【 错误】
1.2 随堂测试
1、单选题:
下列哪个数代表八进制整数?
选项:
A: 0Xa6
B: 0144
C: 1840
D: -1E3
答案: 【 0144 】
2、单选题:
下列正确的语句是( )
选项:
A: A、float 3.14;
B: B、byte i=225;
C: C、long k=33L;
D: D、int p[3];
答案: 【 C、long k=33L;】
3、单选题:
下面哪个语句(初始化数组)是不正确的:()
选项:
A: int x[] = {1,2,3};
B: int x[3] = {1,2,3};
C: int[] x = {1,2,3};
D: int x[] = new int[]{1,2,3};
答案: 【 int x[3] = {1,2,3};】
4、单选题:
下面的代码段中,执行之后i 和j 的值是什么? ( )int i = 1; int j; j = i++*2+3*--i;
选项:
A: 1, 2
B: 1, 5
C: 2, 1
D: 2, 2
答案: 【 1, 5 】
5、单选题:
判断字符型变量c1是否为小写字母的正确表达式为( )。
选项:
A: ‘a’<=c1<=’z’
B: (c1>=’A’)&&(c1<=’z’)
C: (‘a’>=c1)||(‘z’<=c1)
D: (c1>=’a’)&&(c1<=’z’)
答案: 【 (c1>=’a’)&&(c1<=’z’)】
1.3 随堂测试
1、单选题:
下列语句序列执行后,m 的值是() int a=10, b=3, m=5; if( a==b ) m+=a; else m=++a*m;
选项:
A: 15
B: 50
C: 55
D: 5
答案: 【 55】
2、单选题:
下列语句序列执行后,k 的值是( ) int i=4,j=5,k=9,m=5; if(i>j||m<k) k++; else k--;
选项:
A: 5
B: 10
C: 8
D: 9
答案: 【 10】
3、单选题:
下列语句序列执行后,k 的值是( ) int i=10, j=18, k=30; switch( j - i ) { case 8 : k++; case 9 : k+=2; case 10: k+=3; default : k/=j; }
选项:
A: 31
B: 32
C: 2
D: 33
答案: 【 2】
4、单选题:
设int 型变量 a、b,float 型变量 x、y,char 型变量 ch 均已正确定义并赋值,正确的switch语句是( )
选项:
A: switch (x + y) { ...... }
B: switch ( ch + 1 ) { ...... }
C: switch ch { ...... }
D: switch ( a + b ); { ...... }
答案: 【 switch ( ch + 1 ) { ...... }】
1.4 随堂测试
1、单选题:
以下由 for 语句构成的循环执行的次数是( ) for ( int i = 0; true i++)
选项:
A: 有语法错,不能执行
B: 无限次
C: 2
D: 3
答案: 【 有语法错,不能执行 】
2、单选题:
下列语句序列执行后,j 的值是( ) int j=1; for( int i=5; i>0; i-=2 ) j*=i;
选项:
A: 15
B: 1
C: 60
D: 0
答案: 【 15】
3、单选题:
以下for循环的执行次数是( ) for(int x=0;(x==0)&(x<4);x++);
选项:
A: 无限次
B: 一次
C: 执行4次
D: 执行3次
答案: 【 一次 】
4、单选题:
下列语句序列执行后,j 的值是( ) int j=8, i=6; while( i >4 ) i-=2; - -j;
选项:
A: 5
B: 6
C: 7
D: 8
答案: 【 7】
5、单选题:
若有循环:int x=5,y=20; do { y-=x; x+=2; }while(x<y); 则循环体将被执行____次。
选项:
A: 2
B: 1
C: 0
D: 3
答案: 【 2】
1.5 随堂测试
1、填空题:
数组的元素通过________ 来访问,数组Array的长度为______。
答案: 【 下标 Array.length】
2、填空题:
数组复制时,"="将一个数组的_____ 传递给另一个数组。
答案: 【 引用】
3、填空题:
JVM将数组存储在_____ (堆或栈)中。
答案: 【 栈】
4、填空题:
Java中数组的下标的数据类型是_____。
答案: 【 整型】
5、填空题:
数组最小的下标是_____。
答案: 【 0】
6、填空题:
浮点型数组的默认值是_______。
答案: 【 0.0f】
7、填空题:
数组创建后其大小_________改变。
答案: 【 不能】
第1周测试
1、单选题:
Java源文件扩展名和编译后的文件扩展名分别为( )。
选项:
A: class和 .java
B: java和 .class
C: class和 .class
D: java和 .java
答案: 【 java和 .class 】
2、单选题:
下面哪个语句(初始化数组)是不正确的:( )
选项:
A: int x[] = {1,2,3};
B: int x[3] = {1,2,3};
C: int[] x = {1,2,3};
D: int x[] = new int[]{1,2,3};
答案: 【 int x[3] = {1,2,3};】
3、单选题:
下面的代码段中,执行之后i 和j 的值是什么? ( )int i = 1; int j; j = i++*2+3*--i;
选项:
A: 1, 2
B: 1, 5
C: 2, 1
D: 2, 2
答案: 【 1, 5】
4、单选题:
在Java应用程序中,[ ]主方法头是合法的。
选项:
A: public static void main(String[] args)
B: public void main(String args[])
C: public static main(String args)
D: static void main(String[] a)
答案: 【 public static void main(String[] args)】
5、单选题:
有语句:String s=”zhongguo”,下面哪项可以获取字符串s中字符的个数[ ]
选项:
A: s.length
B: s.length()
C: len(s)
D: s.charAt()
答案: 【 s.length() 】
6、单选题:
下面哪条语句定义了5个元素的数组[ ]
选项:
A: int [] a={22,23,24,25,12};
B: int a []=new int(5);
C: int [5] array;
D: int [] arr;
答案: 【 int [] a={22,23,24,25,12};】
7、单选题:
现有如下程序片断: int x=6; if(x){ System.out.println(“x=”+x); }else{ System.out.println(“x=0”); }执行程序片断的结果是[ ]
选项:
A: x=6
B: x=0
C: 编译出错
D: 运行异常
答案: 【 编译出错】
8、单选题:
下面选项中不能把整型变量intNum转换为字符串的是[ ]
选项:
A: String str=intNum+“” ;
B: String str=Integer.toString(intNum);
C: String str=String.valueOf(intNum);
D: Stirngstr=Integer.valueOf(intNum);
答案: 【 Stirngstr=Integer.valueOf(intNum);】
9、单选题:
下列关于实型变量书写正确的是[ ]
选项:
A: E3
B: 2e0.3
C: 1.2e3
D: 1.2E0.3
答案: 【 1.2e3 】
10、单选题:
判断字符型变量c1是否为小写字母的正确表达式为( )。
选项:
A: ‘a’<=c1<=’z’
B: (c1>=’A’)&&(c1<=’z’)
C: (‘a’>=c1)||(‘z’<=c1)
D: (c1>=’a’)&&(c1<=’z’)
答案: 【 (c1>=’a’)&&(c1<=’z’)】
11、判断题:
== 操作符判定两个分立的对象的内容和类型是否一致。
选项:
A: 正确
B: 错误
答案: 【 错误】
12、判断题:
continue语句用在循环语句中,它的作用是终止本次循环,执行下一次循环 。
选项:
A: 正确
B: 错误
答案: 【 正确】
13、判断题:
若x = 5,则表达式(x + 5)/3的值是3
选项:
A: 正确
B: 错误
答案: 【 正确】
14、判断题:
Java中有一种特殊的赋值运算叫做三元运算,它和if-else语句类似
选项:
A: 正确
B: 错误
答案: 【 正确】
15、判断题:
while循环条件不能是boolean类型的常量
选项:
A: 正确
B: 错误
答案: 【 错误】
16、填空题:
在Java中,3.14156D表示的是__________。
答案: 【 双精度(或double型)实数】
17、填空题:
若x=5,y=10,则x>y&&x++==y—的逻辑值为__________。
答案: 【 false】
18、填空题:
对于byte型变量,内存分配________个字节。
答案: 【 1】
19、填空题:
在同一个switch语句中,case后的__________必须互不相同。
答案: 【 常量值】
20、填空题:
设有数组定义:int a[]={11,22,33,44,55,66,77,88,99};则执行下列几个语句后的输出结果是_______。for(int i=0;i<a.length;i++)if(a[i]%3==0) System.out.print(a[i]+” ”);
答案: 【 33 66 99】
第2周 面向对象程序设计
2.1 随堂测验
1、单选题:
关于Java语言叙述错误的是( )。
选项:
A: Java语言具有跨平台性
B: Java是一种面向对象的语言
C: Java语言中的类可以多继承
D: Java的垃圾收集机制自动回收程序已不再使用的对象
答案: 【 Java语言中的类可以多继承】
2、单选题:
不能构成循环的语句是( )。
选项:
A: for 语句
B: while 语句
C: switch 语句
D: do__while 语句
答案: 【 switch 语句】
3、判断题:
对象赋值实际上是同一个对象具有两个不同的名字,它们都有同一个引用值。
选项:
A: 正确
B: 错误
答案: 【 正确】
4、判断题:
对象可作方法参数,对象数组不能作方法参数。
选项:
A: 正确
B: 错误
答案: 【 错误】
5、填空题:
( )变量在内存中只有一个拷贝,被该类的所有对象共享;每当创建一个实例,就会为实例变量分配一次内存,实例变量可以在内存中有多个拷贝,互不影响。
答案: 【 类】
6、填空题:
对象拷贝有对象引用复制、浅复制和( )三种。
答案: 【 深复制】
2.2 随堂测验
1、单选题:
下面关于类方法的描述,错误的是
选项:
A: 说明类方法使用关键字static
B: 类方法和实例方法一样均占用对象的内存空间
C: 类方法能用实例和类名调用
D: 类方法只能处理类变量或调用类方法
答案: 【 类方法和实例方法一样均占用对象的内存空间】
2、多选题:
下述哪些说法是正确的
选项:
A: 用static关键字声明实例变量
B: 实例变量是类的成员变量
C: 局部变量在方法执行时创建
D: 局部变量在使用之前必须初始化
答案: 【 实例变量是类的成员变量;
局部变量在方法执行时创建】
3、填空题:
类的访问控制符有()和默认default两种。
答案: 【 public】
4、填空题:
protected类型的类成员可被同一类、同一包中的子类与非子类和不同包中的()的代码访问引用。
答案: 【 子类】
5、填空题:
private类型的类成员只能被其所在类中的代码访问引用,它只具有()域访问性。
答案: 【 类】
6、填空题:
系统规定用( )表示当前类的构造方法,用super()表示直接父类的构造方法,在构造方法中两者只能选其一,且须放在第一条语句。
答案: 【 this()】
2.3 随堂测验
1、单选题:
以下叙述正确的是( )。
选项:
A: main方法必须是public方法
B: 构造方法必须是public方法
C: Java应用程序的文件名可以是任意的
D: 构造方法应该声明为void类型
答案: 【 main方法必须是public方法】
2、单选题:
关于类和对象的叙述正确的是( )。
选项:
A: 类的静态属性和全局变量的概念完全一样,只是表达形式不同
B: Java的类分为两大部分:系统定义的类和用户自定义的类
C: 类的成员至少有一个属性和一个方法
D: 类是对象的实例化
答案: 【 Java的类分为两大部分:系统定义的类和用户自定义的类】
3、单选题:
以下有关构造方法的说法,正确的是( )。
选项:
A: 一个类的构造方法可以有多个
B: 构造方法在类定义时被调用
C: 构造方法只能由对象中的其它方法调用
D: 构造方法可以和类同名,也可以和类名不同
答案: 【 一个类的构造方法可以有多个】
4、单选题:
Java语言的类间的继承关系是( )。
选项:
A: 单重的
B: 多重的
C: 线程的
D: 不能继承
答案: 【 单重的】
5、单选题:
以下有关类的继承的叙述中,正确的是( )。
选项:
A: 子类能直接继承父类所有的非私有属性,也可通过接口继承父类的私有属性
B: 子类只能继承父类的方法,不能继承父类的属性
C: 子类只能继承父类的非私有属性,不能继承父类的方法
D: 子类不能继承父类的私有属性
答案: 【 子类不能继承父类的私有属性】
第2周测验
1、单选题:
下面关于封装性的描述中,错误的是( )。
选项:
A: 封装体包含属性和行为
B: 被封装的某些信息在外不可见
C: 封装提高了可重用性
D: 封装体中的属性和行为的访问权限相同
答案: 【 封装体中的属性和行为的访问权限相同】
2、单选题:
下面关于类方法的描述,错误的是( )。
选项:
A: 说明类方法使用关键字static
B: 类方法和实例方法一样均占用对象的内存空间
C: 类方法能用实例和类名调用
D: 类方法只能处理类变量或调用类方法
答案: 【 类方法和实例方法一样均占用对象的内存空间】
3、单选题:
下面关于包的描述中,错误的是( )。
选项:
A: 包是若干对象的集合
B: 使用package语句创建包
C: 使用import语句引入包
D: 包分为有名包和无名包两种
答案: 【 包是若干对象的集合】
4、单选题:
下列关于Java源程序结构的论述中,正确的是( )。
选项:
A: 一个文件包含的import语句最多1个
B: 一个文件包含的public类最多1个
C: 一个文件包含的接口定义最多1个
D: 一个文件包含的类定义最多1个
答案: 【 一个文件包含的public类最多1个】
5、单选题:
下列关于构造方法的叙述中,错误的是( )。
选项:
A: Java语言规定构造方法名与类名必须相同
B: Java语言规定构造方法没有返回值,但不用void声明
C: Java语言规定构造方法不可以重载
D: Java语言规定构造方法只能通过new自动调用
答案: 【 Java语言规定构造方法不可以重载】
6、单选题:
下列构造方法的调用方式中,正确的是( )。
选项:
A: 按照一般方法调用
B: 由用户直接调用
C: 只能通过new自动调用
D: 被系统调用
答案: 【 只能通过new自动调用】
7、单选题:
下列哪个修饰符可以使在一个类中定义的成员变量只能被同一包中的类访问( )。
选项:
A: private
B: 无修饰符
C: public
D: protected
答案: 【 无修饰符】
8、单选题:
为AB类的一个无形式参数无返回值的方法method书写方法头,使得使用类名AB作为前缀就可以调用它,该方法头的形式为( )。
选项:
A: static void method( )
B: public void method( )
C: final void method( )
D: abstract void method
答案: 【 static void method( )】
9、单选题:
在Java中,一个类可同时定义许多同名的方法,这些方法的形式参数的个数、类型或顺序各不相同,传回的值也可以不相同。这种面向对象程序特性称为( )。
选项:
A: 隐藏
B: 覆盖
C: 重载
D: Java不支持此特性
答案: 【 重载】
10、单选题:
下列对多态性的描述中,错误的是( )。
选项:
A: Java语言允许方法重载与方法覆盖
B: Java语言允许运算符重载
C: Java语言允许变量覆盖
D: 多态性提高了程序的抽象性和简洁性
答案: 【 Java语言允许运算符重载】
11、判断题:
类是一种类型,也是对象的模板。
选项:
A: 正确
B: 错误
答案: 【 正确】
12、判断题:
类中说明的方法可以定义在类体外。
选项:
A: 正确
B: 错误
答案: 【 错误】
13、判断题:
实例方法中不能引用类变量。
选项:
A: 正确
B: 错误
答案: 【 错误】
14、判断题:
创建对象时系统将调用适当的构造方法给对象初始化。
选项:
A: 正确
B: 错误
答案: 【 正确】
15、判断题:
使用运算符new创建对象时,赋给对象的值实际上是一个引用值。
选项:
A: 正确
B: 错误
答案: 【 正确】
16、填空题:
Java使用固定于首行的( )语句来创建包。
答案: 【 package】
17、填空题:
类是一组具有相同属性和( )的对象的抽象。
答案: 【 行为】
18、填空题:
在运行时,由java解释器自动引入,而不用import语句引入的包是( )。
答案: 【 java.lang】
19、填空题:
发布Java应用程序或类库时,通常可以使用JDK中自带的( )命令打包。
答案: 【 JAR】
20、填空题:
构造方法的方法名与( )相同,若类中没有定义任何的构造方法,则运行时系统会自动为该类生成一个默认构造方法。
答案: 【 类名】
第3周 继承
3.1 随堂测验
1、单选题:
在Java中,所有类的根类是()
选项:
A: java.lang.Object
B: java.lang.Class
C: java.lang.String
D: java.lang.System
答案: 【 java.lang.Object】
2、单选题:
如果任何包中的子类都能访问超类中的成员,那么应使用()限定词?
选项:
A: 缺省
B: private
C: protected
D: transient
答案: 【 protected】
3、单选题:
如果希望某个变量只可以被类本身访问和调用,则应该使用下列哪一种访问控制修饰符()
选项:
A: private
B: protected
C: 缺省
D: public
答案: 【 private】
4、单选题:
Java语言的类间的继承关系是( )
选项:
A: 多重的
B: 单重的
C: 线程的
D: 不能继承
答案: 【 单重的】
5、填空题:
Java中所有类都是类( )的子类。
答案: 【 Object】
6、填空题:
以下程序的输出结果为 。class Father {
void sport() {
System.out.print("打篮球!");
}
}
class Son
extends Father {
void sport() {
System.out.print("踢足球!");
}
}
public class Test {
public static void main(String[] args) {
Father father = new Father();
Son son = new Son();
father.sport();
son.sport();
}
}
答案: 【 打篮球!踢足球!】
3.2 随堂测验
1、单选题:
对于子类的构造函数说明,下列叙述中不正确的是( )
选项:
A: 子类无条件地继承父类的无参构造函数
B: 子类可以在自己的构造函数中使用super关键字来调用父类的含参数构造函数,但这个调用语句必须是子类构造函数的第一个可以执行语句
C: 在创建子类的对象时,将先执行继承自父类的无参构造函数,然后再执行自己的构造函数
D: 子类不但可以继承父类的无参的构造函数,也可以继承父类的有参构造函数
答案: 【 子类不但可以继承父类的无参的构造函数,也可以继承父类的有参构造函数】
2、填空题:
Java语言中把子类当做父类处理的过程被称为( )
答案: 【 向上转型】
3、填空题:
以下程序的输出结果为 。 class Person {
public Person() {
System.out.println("Person");
}
}
class Student
extends Person {
public Student() {
System.out.println("Student");
}
}
class CollegeStudent
extends Student {
public CollegeStudent() {
System.out.println("CollegeStudent");
}
}
public class Test {
public static void main(String[] args) {
CollegeStudent cs = new CollegeStudent();
}
}
答案: 【 Person
Student
CollegeStudent】
4、填空题:
以下程序的输出结果为 public class Father{
int a=100;
public void miner(){
a--;
}
public static void main(String[] args){
Father x = new Father();
Son y = new Son();
System.out.println(y.a);
System.out.println( y.getA());
y.miner();
System.out.println(y.a);
System.out.println(y.getA());
}
}
class Son extends Father{
int a = 0;
public void plus(){
a++;
}
public int getA() {
return super.a;
}
}
答案: 【 0
100
0
99】
第3周测验
1、单选题:
构造方法何时被调用( )
选项:
A: 类定义时
B: 创建对象时
C: 调用对象方法时
D: 使用对象的变量时
答案: 【 创建对象时】
2、单选题:
下列关于继承性的描述中,错误的是()
选项:
A: 子类继承了父类中除私有的成员以外的其他成员
B: 一个类可以同时生成多个子类
C: Java支持单重继承和多重继承
D: Java通过接口可使子类使用多个父类的成员
答案: 【 Java支持单重继承和多重继承】
3、单选题:
下面关于类的继承性的描述中,错误的是()
选项:
A: 继承是在已有的基础上生成新类的一种方法
B: Java语言要求一个子类只有一个父类
C: 父类中成员的访问权限在子类中将被改变
D: 子类继承父类的所有成员,但不包括私有的成员方法
答案: 【 父类中成员的访问权限在子类中将被改变】
4、单选题:
在类的修饰符中,规定只能被同一包类所使用的修饰符是()
选项:
A: public
B: 默认
C: final
D: abstract
答案: 【 默认】
5、单选题:
下面关于继承的叙述正确的是( )
选项:
A: 在Java中只允许单一继承。
B: 在Java中一个类只能实现一个接口。
C: 在Java中一个类不能同时继承一个类和实现一个接口。
D: Java的多重继承使代码更可靠。
答案: 【 在Java中只允许单一继承。】
6、单选题:
类Teacher和Student是类Person的子类;
Person p;
Teacher t;
Student s;
//p, t and s are all non-null.
if(t instanceof Person) { s = (Student)t; } 最后一句语句的结果是:( )
选项:
A: 将构造一个Student对象;
B: 表达式是合法的;
C: 表达式是错误的;
D: 编译时正确,但运行时错误。
答案: 【 编译时正确,但运行时错误。】
7、单选题:
如果任何包中的子类都能访问超类中的成员,那么应使用哪个限定词( )
选项:
A: 缺省
B: private
C: protected
D: transient
答案: 【 protected】
8、单选题:
在Java中下列描述正确的是( )
选项:
A: 一个子类可以有多个父类,一个父类也可以有多个子类
B: 一个子类可以有多个父类,但一个父类只可以有一个子类
C: 一个子类只可以有一个父类,但一个父类可以有多个子类
D: 上述说法都不对
答案: 【 一个子类只可以有一个父类,但一个父类可以有多个子类】
9、单选题:
以下有关类的继承的叙述中,正确的是( )
选项:
A: 子类能直接访问父类所有的非私有属性,也可通过接口继承父类的私有属性
B: 子类只能继承父类的方法,不能继承父类的属性
C: 子类只能继承父类的非私有属性,不能继承父类的方法
D: 子类不能访问父类的私有属性
答案: 【 子类不能访问父类的私有属性】
10、单选题:
为AB类的一个无形式参数无返回值的方法method书写方法头,使得使用类名AB作为前缀就可以调用它,该方法头的形式为( )
选项:
A: static void method( )
B: public void method( )
C: final void method( )
D: abstract void method( )
答案: 【 static void method( )】
11、判断题:
Java语言中,构造方法是不可以继承的。
选项:
A: 正确
B: 错误
答案: 【 正确】
12、判断题:
子类的成员变量和成员方法的数
