MOOC JAVA程序设计(大连理工大学)1206215809 最新慕课完整章节测试答案
第1章 Java概述
文章目录
JAVA概述单元测验
1、单选题:
下列哪个是Java应用程序主类中正确的main方法?
选项:
A: public void main (String args[ ])
B: static void main (String args[ ])
C: public static void Main (String[] args)
D: public static void main (String[] args)
答案: 【 public static void main (String[] args)】
2、单选题:
使一个名为Myclass和public类可以成功编译,需满足以下哪个条件?
选项:
A: Myclass类中必须定义一个正确的main()方法
B: Myclass类必须定义在Myclass.java源文件中
C: Myclass类必须定义在Myclass包中
D: Myclass类必须被导入
答案: 【 Myclass类必须定义在Myclass.java源文件中】
3、单选题:
下列说法错误的是?
选项:
A: Java是跨平台的编译语言
B: Java支持分布式计算
C: Java支持多线程
D: Java是面向过程的编译语言
答案: 【 Java是面向过程的编译语言】
4、单选题:
以下哪个不是合法的标识符?
选项:
A: STRING
B: x3x
C: void
D: de$f
答案: 【 void】
5、单选题:
给出下列程序,正确的输出是?class A { public static void main(String[] a) { int x = 5, y = 6; x += y--; y &= x; System.out.println("x=" + x + "ty=" + y); }}
选项:
A: x=10 y=1
B: x=10 y=3
C: x=11 y=1
D: x=11 y=3
答案: 【 x=11 y=1】
6、单选题:
下列选项中,哪一个是多行注释符号?
选项:
A: //* *//
B: /* /*
C: / /
D: /* */
答案: 【 /* */】
7、单选题:
下面关于classpath的说法中,错误的是
选项:
A: classpath和path环境变量的查看与配置的方式完全相同。
B: 为了让Java虚拟机能找到所需的class文件,就需要对classpath环境变量进行设置。
C: 从JDK5.0开始,如果classpath环境变量没有进行设置,Java虚拟机会自动将其设置为“.”,也就是当前目录。
D: 在命令行窗口中配置了classpath后,重新打开新命令行窗口依然生效
答案: 【 在命令行窗口中配置了classpath后,重新打开新命令行窗口依然生效】
8、单选题:
下面哪种类型的文件可以在Java虚拟机中运行?
选项:
A: .java
B: .jre
C: .exe
D: .class
答案: 【 .class】
9、单选题:
下列关于Java特点的描述中,错误的是?
选项:
A: Java语言不支持指针
B: Java具有自动垃圾回收的机制
C: Java只能运行在Window和Linux平台
D: Java允许多个线程同时执行台
答案: 【 Java只能运行在Window和Linux平台】
10、单选题:
下列关于JDK、JRE和JVM关系的描述中,正确的是
选项:
A: JDK中包含了JRE,JVM中包含了JRE。
B: JRE中包含了JDK,JDK中包含了JVM。
C: JRE中包含了JDK,JVM中包含了JRE。
D: JDK中包含了JRE,JRE中包含了JVM。
答案: 【 JDK中包含了JRE,JRE中包含了JVM。】
第2章 Java编程基础
Java编程基础单元测验
1、单选题:
编译并运行下面的Java程序,将产生?class A{ int var1=1; int var2; public static void main(String[] args){ int var3=3; A a=new A(); System.out.println(a.var1+a.var2+var3); }}
选项:
A: 0
B: 4
C: 3
D: 代码无法编译,因为var2根本没有被初始化
答案: 【 4】
2、单选题:
在java中下列关于自动类型转换说法正确的是
选项:
A: 基本数据类型和String相加结果一定是字符串型
B: char类型和int类型相加结果一定是字符
C: double类型可以自动转换为int
D: char + int + double +"" 结果一定是double
答案: 【 基本数据类型和String相加结果一定是字符串型】
3、单选题:
运算符优先级别排序正确的是?
选项:
A: 由高向低分别是:()、!、算术运算符、关系运算符、逻辑运算符、赋值运算符;
B: 由高向低分别是:()、关系运算符、算术运算符、赋值运算符、!、逻辑运算符;
C: 由高向低分别是:()、算术运算符、逻辑运算符、关系运算符、!、赋值运算符;
D: 由高向低分别是:()、!、关系运算符、赋值运算符、算术运算符、逻辑运算符;
答案: 【 由高向低分别是:()、!、算术运算符、关系运算符、逻辑运算符、赋值运算符;】
4、单选题:
下列哪个说法是正确的?
选项:
A: 表达式 ( 1.0 > 2.0 ) ? 3.0 : 4 的结果为 4
B: 语句 int[ ][ ] a = new int[10][ ]; 正确地声明了一个整型的二维数组
C: 表达式 (-33)%(-2) 的结果是1的。
D: 表达式 4 +"4"+'4' 和 '4'+ 4 +"4" 的结果是一致的。
答案: 【 语句 int[ ][ ] a = new int[10][ ]; 正确地声明了一个整型的二维数组】
5、单选题:
下列程序中哪行代码是错误的?public class Exam { public static void main(String args[]) { int x = 8; byte b = 127; //【代码A】 b = x; //【代码B】 long y=x; //【代码C】 float z=6.89F ; //【代码D】 }}
选项:
A: 【代码A】
B: 【代码B】
C: 【代码C】
D: 【代码D】
答案: 【 【代码B】】
6、单选题:
下列哪个叙述是正确的?
选项:
A: 成员变量的名字不可以和局部变量的相同。
B: 方法的参数的名字可以和方法中声明的局部变量的名字相同。
C: 成员变量没有默认值。
D: 局部变量没有默认值。
答案: 【 局部变量没有默认值。】
7、单选题:
下列哪个变量声明是错误的?
选项:
A: int i=1234;
B: char c=98;
C: float f=12.89;
D: byte b=12;
答案: 【 float f=12.89;】
8、单选题:
设有定义 int i=123; long j=456; 下面赋值不正确的语句是
选项:
A: j=i;
B: j=(long)i;
C: i=(int)j;
D: i=j;
答案: 【 i=j;】
9、单选题:
下面关于while和do-while循环的说法中,正确的是
选项:
A: 与do-while语句不同的是,while语句的循环体至少执行一次
B: do-while语句首先计算终止条件,当条件满足时,才去执行循环体中的语句
C: 两种循环除了格式不同外,功能完全相同
D: 以上答案都不正确
答案: 【 以上答案都不正确】
10、单选题:
若a和b均是整型变量并已正确赋值,正确的switch语句是
选项:
A: switch(a+b); { ...... }
B: switch( a+b*3.0 ) { ...... }
C: switch a { ...... }
D: switch ( a%b ) { ...... }
答案: 【 switch ( a%b ) { ...... }】
11、单选题:
下面选项中,哪个是短路与运算符( )
选项:
A: &
B: &&
C: |
D: ||
答案: 【 &&】
12、单选题:
下列选项中,不属于比较运算符的是
选项:
A: =
B: ==
C: <
D: <=
答案: 【 =】
13、单选题:
下列数据类型进行运算时,哪一个会发生自动类型提升
选项:
A: int + int
B: long + long
C: byte + byte
D: double + double
答案: 【 byte + byte】
14、单选题:
阅读下面的代码片段public static int add(int a,int b) {return a + b;}下列选项中,可以在main()方法中调用add()方法的是
选项:
A: int num = add(1.0,2.0);
B: int num = add(1,2);
C: int num = add(true,flase);
D: int num = add("1", "2");
答案: 【 int num = add(1,2);】
15、单选题:
下列数据类型中,哪种数据类型转为int类型需要进行强制转换
选项:
A: byte
B: short
C: char
D: float
答案: 【 float】
16、单选题:
下列关于成员变量默认值的描述中,错误的是( )
选项:
A: byte类型的数据默认值是0
B: int类型的数据默认值是0
C: long类型的数据默认值是0
D: float类型的数据默认值是0.0f
答案: 【 long类型的数据默认值是0】
17、单选题:
关于continue语句的使用范围,下列说法正确的是
选项:
A: continue语句可以在选择语句中使用
B: continue语句可以在条件语句中使用
C: continue语句可以在循环语句中使用
D: 不输出任何内容
答案: 【 continue语句可以在循环语句中使用】
18、单选题:
请阅读下面的程序Public class Test { public static void main(String[] args) { int a = 0; int b = 0; for (int i = 1; i <= 5; i++) { a = i % 2; while (a-- >= 0) { b++; } } System.out.println("a=" + a + ",b="+ b); }}下列选项中,哪一个是正确的运行结果( )
选项:
A: a=8,b=-2
B: a=-2,b=8
C: a=3,b=0
D: a=0,b=3
答案: 【 a=-2,b=8】
19、单选题:
请阅读下面的程序public class Test { public static void main(String[] args) { for(int x =0;x<5;x++) { if(x%2==0) break; System.out.print(x+” “); } } }下列选项中,哪一个是程序的运行结果
选项:
A: 1 2 3 4 5
B: 0 2 4
C: 1 3
D: 不输出任何内容
答案: 【 不输出任何内容】
20、单选题:
假设int x = 2,三元表达式 x>0?x+1:5 的运行结果是以下哪一个?
选项:
A: 0
B: 2
C: 3
D: 5
答案: 【 3】
21、单选题:
要产生[20,999]之间的随机整数可以使用以下哪个表达式?
选项:
A: (int)(20+Math.random()*97)
B: 20+(int)(Math.random()*980)
C: (int)Math.random()*999
D: 20+(int)Math.random()*980
答案: 【 20+(int)(Math.random()*980)】
22、单选题:
请阅读下面的程序,程序的运行结果是()。class Person { String name; int age; public Person() {} public Person(String n, int a) { name