admin 管理员组文章数量: 1086019
2024年12月31日发(作者:continue语句是结束本次循环)
第1章、Java语言简介
第2知识点、Java程序的开发过程
【单项选择】1 、下列关于classpath环境变量的说法中,哪一个是正确的 (难度系数:易)
A、 classpath配置一次后可永久使用
B、 没有classpath环境变量就不能运行Java程序
C、 classpath环境变量可以让虚拟机找到class文件的目录
D、 查看当前classpath配置的命令是:classpath
参考答案:C
答案解析: classpath环境变量可以让虚拟机找到class文件目录,没有配置classpath环境
变量时,java虚拟机会自动将其设置为“.”。查看当前classpath的命令是set classpath;
【单项选择】2 、在下列说法中,选出最正确的一项是( )。(难度系数:易)
A、 Java语言是以类为程序的基本单位的
B、 Java语言是不区分大小写的
C、 多行注释语句必须以//开始
D、 在Java语言中,类的源文件名和该类名可以不相同
参考答案:A
【单项选择】3 、Java属于以下哪种语言? (难度系数:易)
A、 机器语言
B、 汇编语言
C、 高级语言
D、 以上都不对
参考答案:C
答案解析: Java是一门高级编程语言
【单项选择】4 、下列选项中不属于Java虚拟机的执行特点的一项是( )。(难度系数:易)
A、 异常处理
B、 多线程
C、 动态链接
D、 简单易学
参考答案:D
【单项选择】5、下列命令中,可以将文档注释提取出来生成帮助文档的是( ) (难度系
数:易)
A、 javac
B、 java
C、 javadoc
D、 jar
参考答案:C
答案解析: 可以使用javadoc命令将文档注释提取出来生成帮助文档
【单项选择】6 、下列关于Java特点的描述中,错误的是? (难度系数:易)
A、 Java语言不支持指针
B、 Java具有自动垃圾回收的机制
C、 Java只能运行在Window和Linux平台
D、 Java允许多个线程同时执行
参考答案:C
答案解析: JAVA是一门面向对象的语言,它没有指针的概念,并提供了自动垃圾回收的机
制,具有跨平台,多线程等特点。
【单项选择】7 、下列关于JDK、JRE和JVM关系的描述中,正确的是 (难度系数:易)
A、 JDK中包含了JRE,JVM中包含了JRE。
B、 JRE中包含了JDK,JDK中包含了JVM。
C、 JRE中包含了JDK,JVM中包含了JRE。
D、 JDK中包含了JRE,JRE中包含了JVM。
参考答案:D
答案解析: JVM是Java虚拟机,JRE是Java程序的运行时环境,JDK是Java程序的编译环
境,包含范围递增。所以从小到大一次是 JVM—JRE—JDK。
【单项选择】8 、下列选项中,属丁JVM执行过程中的特点的一项是( )。(难度系数:难)
A、 编译执行
B、 多进程
C、 异常处理
D、 静态链接
参考答案:C
【单项选择】9 、在Java语言中,那一个是最基本的元素?( )(难度系数:易)
A、 方法
B、 包
C、 对象
D、 接口
参考答案:C
【单项选择】10 、于Java语言的内存回收机制,下列选项中最正确的一项是( )。(难度系数:
易)
A、 Java程序要求用户必须手工创建一个线程来释放内存
B、 Java程序允许用户使用指针来释放内存
C、 内存回收线程负责释放无用内存
D、 内存回收线程不能释放内存对象
参考答案:C
【单项选择】11 、下列属于Java语言的特点的一项是( )。(难度系数:易)
A、 运算符重载(C++可以有)
B、 类间多重继承
C、 指针操作
D、 垃圾回收(java独有)
参考答案:D
【单项选择】12 、下列选项中,不属于java核心包的一项是( )。(难度系数:易)
A、
B、
C、
D、 java.1ang
参考答案:A
【单项选择】13 、下列描述中,不正确的是( )。(难度系数:易)
A、 Java不支持多线程
B、 一个Java源程序中不允许有多个公共类
C、 Java程序可以划分为两大类:Application和Applet
D、 Java通过接口支持多重继承
参考答案:A
【单项选择】14 、下列哪个不是面向对象程序设计方法的特点?( )(难度系数:易)
A、 抽象
B、 继承
C、 多态
D、 结构化
参考答案:D
【单项选择】15 、下列选项中,可以正确配置classpath的命令是( ) A. set classpath
=C:Program FilesJavajdk1.7.0_15bin B. C.D.(难度系数:易)
A、 set classpath =C:Program FilesJavajdk1.7.0_15bin
B、 set classpath : C:Program FilesJavajdk1.7.0_15bin
C、 classpath set =C:Program FilesJavajdk1.7.0_15bin
D、 classpath set : C:Program FilesJavajdk1.7.0_15bin
参考答案:A
答案解析: 配置classpath的命令是set classpath=xxx,并且等于号两边不要有空格。
【单项选择】16 、下列关于JDK安装的说法中,错误的是? A. B. C. D.(难度系数:易)
A、 Oracle公司提供了多种操作系统的JDK
B、 开发工具中已经包含了一个JRE,因此可以选择不再安装公共的JRE环境
C、 在安装JDK过程中,源代码指的是Java公共的API类
D、 开发工具是JDK中的核心功能模块,因此无论是否进行Java程序开发都必须安装
参考答案:D
答案解析: 只有开发Java程序时,才需要安装开发工具,如果只是运行Java程序,安装JRE
即可。
【单项选择】17 、下面关于classpath的说法中,错误的是()。 (难度系数:易)
A、 classpath和path环境变量的查看与配置的方式完全相同。
B、 为了让Java虚拟机能找到所需的class文件,就需要对classpath环境变量进行设置。
C、 从JDK5.0开始,如果classpath环境变量没有进行设置,Java虚拟机会自动将其设置为
“.”,也就是当前目录。
D、 在命令行窗口中配置了classpath后,重新打开新命令行窗口依然生效
参考答案:D
答案解析: 在命令行窗口设置的classpath只对当前窗口有效
【单项选择】18 、.在JDK安装目录下,用于存放可执行程序的文件夹是? (难度系数:
易)
A、 bin
B、 jre
C、 lib
D、 db
参考答案:A
答案解析: bin目录用于存放一些可执行程序,如(Java编译器)、(Java
运行工具)、(打包工具)和(文档生成工具)等。
【单项选择】19 、下面关于javac命令作用的描述中,正确的是 (难度系数:易)
A、 可以执行java程序
B、 可以将编写好的Java文件编译成.class文件
C、 可以把文件压缩
D、 可以把数据打包
参考答案:B
答案解析: javac命令将java文件编译成java字节码文件。
【单项选择】20 、下列描述中不属于 Java异常处理机制优点的一项是( D )。(难度系数:
易)
A、 把错误处理代码从正常代码中分离出来
B、 按错误类型和差别分组
C、 对无法预测的错误的捕获和处理
D、 能够处理任何类型的错误
参考答案:D
第2章、基本类型、数组和枚举类型
第1知识点、基本数据类型
【单项选择】1 、下列选项中,按照箭头方向,不可以进行自动类型转换的是 (难度系数:
易)
A、 byte → int
B、 int → long
C、 double →long
D、 short → int
参考答案:C
答案解析: 类型转换过程中,只能范围小的自动转成范围大的。double范围大于long
【单项选择】2 、下列选项中关于二维数组的定义,格式错误的是( ) (难度系数:易)
A、 int[][] arr = new int[3][4]
B、 int[][] arr = new int[3][]
C、 int[][] arr = new int[][4]
D、 int[][] arr = {{1,2},{3,4,5},{6}}
参考答案:C
答案解析: 选项3错误,因为该选项没有给出二维数组的长度
【单项选择】3 、下面选项中,哪一个是合法的标识符(难度系数:易)
A、 hello world
B、 1Demo
C、 _3_
D、 class
参考答案:C
答案解析: 标识符可以由任意顺序的大小写字母、数字、下划线(_)和美元符号($)组
成,但标识符不能以数字开头,不能是Java中的关键字
【单项选择】4 、下面选项中,哪一个不是Java中的关键字(难度系数:易)
A、 sizeof
B、 const
C、 public
D、 goto
参考答案:A
答案解析: sizeof不属于Java语言中的关键字
【单项选择】5 、请阅读下面的代码片段 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('a','b');
C、 int num = add(true,flase);
D、 int num = add('1','2');
参考答案:B
答案解析: 调用add方法传入’a’和’b’会自动类型提升为int类型,查找对应的ascii码
表值
【单项选择】6 、下列整型的最终静态属性i的定义中,正确的是( C )。(难度系数:易)
A、 final i;
B、 static int i;
C、 static final int I=234:
D、 finall float i=3.14f;
参考答案:C
【单项选择】7 、下列选项中,哪一个是十进制数6的二进制值( ) (难度系数:易)
A、 111
B、 101
C、 110
D、 011
参考答案:C
答案解析: 十进制转换成二进制就是一个除以2取余数的过程。把要转换的数,除以2,
得到商和余数,将商继续除以2,直到商为0。最后将所有余数倒序排列,得到数就是转换
结果
【单项选择】8 、下列选项中,不属于Java中关键字的是(难度系数:易)
A、 const
B、 false
C、 Final
D、 null
参考答案:C
答案解析: Java中的关键字都是小写的
【单项选择】9 、下列语句中,正确的给出初始值为222.111的单精度浮点数f的定义的
一个是( )。(难度系数:易)
A、 float f=222.111f:
B、 float f=222.111;
C、 float f=222.111 d:
D、 float f=‘222.111’;
参考答案:A
【单项选择】10 、下列转义字符中,不合法的是( )(难度系数:易)
A、 'n'
B、 'x'
C、 'r'
D、 't'
参考答案:B
答案解析: Java中的转义字符有n、r、t、b、'、'、等
【单项选择】11 、下列关于数据类型的类包装的说法中,不正确的一个是( )。(难度系数:
易)
A、 char类型被包装在Character类中
B、 int类型被包装在Integer类中
C、 包装类有己的常用方法和常数
D、 包装类可以被其他的类继承
参考答案:D
【单项选择】12 、下列关于数据类型的说法中,错误的是(难度系数:易)
A、 Java中的数据类型分为基本数据类型和引用数据类型
B、 int类型数据占4个字节
C、 浮点数类型变量不能赋予一个整数数值
D、 布尔类型的变量只有true和false这两个值
参考答案:C
答案解析: 浮点数类型变量可以赋予一个整数数值
【单项选择】13 、下列字符串常量中,哪一个是错误的( )(难度系数:易)
A、 “abc”
B、 “12’12”
C、 “12”12”
D、 “”
参考答案:C
答案解析: 字符串常量用于表示一串连续的字符,一个字符串常量要用一对英文半角格式
的双引号(” “)引起来,一个字符串可以包含一个字符或多个字符,也可以不包含任何
字符,但不能包含特殊字符,例如在字符串中表示引号(”),需要用转义字符()。
【单项选择】14 、下列关于浮点型数据的说法中,不正确的一个是( )。(难度系数:易)
A、 浮点型数据属于实犁数据
B、 浮点型数据由数据和小数组成
C、 浮点型数据小数位数越少越精确
D、 浮点数据包括实型常量和实变量
参考答案:C
【单项选择】15 、下列选项中,不可以被final修饰的是?( )(难度系数:易)
A、 接口
B、 类
C、 方法
D、 变量
参考答案:A
答案解析: final关键字可用于修饰类、变量和方法
【单项选择】16 、关于变量类型转换的描述中,正确的是(难度系数:易)
A、 只有数据类型相同的数据才能进行运算
B、 byte类型和short类型的数据是不能一起运算的
C、 两个byte类型数据一起运算时会把先自动提升到int类型再运算
D、 两个整型在一起运算时,结果一定是int
参考答案:C
答案解析: byte类型和short类型的数据一起运算时会把先自动提升到int类型,再运算
【单项选择】17 、现有一个双精度浮点变量声明为double dValue;下列赋值语句不正确的
一个是( )。(难度系数:易)
A、 dValue=VE_INFINITY;
B、 dValue=;
C、 dValue=VE_INFINITY;
D、 dValue=(double)|true;
参考答案:D
【单项选择】18 、在Java语言中,String类型的成员变量的默认初始值是( )。 (难度系
数:易)
A、 false
B、 ''
C、 0
D、 null
参考答案:D
答案解析: String类型属于引用类型,引用类型的默认初始值为null
【单项选择】19 、请阅读下列示例代码,选择程序的输出结果 int a = 1; int b = a++; int c = ++a;
int d = a++ + ++a; (a + "," + b + "," + c + "," + d); (难度系数:易)
A、 5,1,3,9
B、 5,2,3,9
C、 5,1,2,9
D、 5,1,3,8
参考答案:D
答案解析: ++在前表示先运行自加运算,++在后表示后运行自加运算
【单项选择】20 、现有2个byte类型的变量bb=126、bb2=5,当执行bbl=(byte)(bb+bb2);
语句之后,bb的值应该是( )。(难度系数:易)
A、 -128
B、 131
C、 -125
D、 语句在编泽中出错
参考答案:C
第3章、运算符、表达式和语句
第1知识点、运算符与表达式
【单项选择】1 、关于变量类型转换的描述中,正确的是 (难度系数:易)
A、 只有数据类型相同的数据才能进行运算
B、 byte类型和short类型的数据是不能一起运算的
C、 两个byte类型数据一起运算时会把先自动提升到int类型再运算
D、 两个整型在一起运算时,结果一定是int
参考答案:C
答案解析: byte类型和short类型的数据一起运算时会把先自动提升到int类型,再运算
【单项选择】2 、请阅读下面的代码 boolean a = false; boolean b = true; boolean c=
( a&&b)&&(!b); int result = (c = = false)?1:2; 当语句执行完,变量c与result的值为( )(难度
系数:易)
A、 false和1
B、 true和2
C、 true和1
D、 false和2
参考答案:A
答案解析: 三元运算符条件表达式为真就返回第一个表达式的值,条件表达式为假就返回
第二个表达式的值。&&运算符的特点是,当且仅当运算符两边的操作数都为true时,其结
果才为true,否则结果为false,因此c=false,三元运算符的表达式c==false就为true,因此
返回结果为1
【单项选择】3 、下面选项中,可以从数组int [] arr = {10,1,2,3,4,5,6,7,8,9,10}中求出元素10
所对应角标值的是( )(难度系数:易)
A、 for(int x=0;x
B、 for(int x=1;x
C、 for(int x=0;x
D、 for(int x=1;x
参考答案:A
答案解析: 数组的最大角标值比数组的长度小1,并且数组的角标值从0开始。所以前提
条件是x=0且判断条件是x
【单项选择】4 、下列选项中,不属于位运算符的是(难度系数:易)
A、 &
B、 !
C、 ^
D、 |
参考答案:B
答案解析: “!”是逻辑运算符,表示逻辑非
【单项选择】5 、表达式3510/1000的运算结果为(难度系数:易)
A、 3
B、 3.51
C、 3.510
D、 4
参考答案:A
答案解析: 整数之间相除,会忽略小数部分
【单项选择】6 、下面关于字符类型变量的定义中,错误的是( ) (难度系数:易)
A、 char a='97';
B、 char b=65536;
C、 char c='u0061';
D、 char d='a';
参考答案:D
答案解析: char类型数据在定义时需要使用单引号引起的单个字符,也可以赋值为0-65535
之间的数字。也可以使用Unicode 代码来描述
【单项选择】7 、程序的运行结果是 public class Example02 { public static void main(String[]
args) { int x = 0; // 定义变量x,初始值为0 int y = 0; // 定义变量y,初始值为0 boolean b = x==0
|| y++<0; n("b = "+b+", y = "+y); } } (难度系数:易)
A、 b = false, y = 0
B、 b = false, y = 1
C、 b = true, y = 0
D、 b = true, y = 1
参考答案:C
答案解析: 答案为C。我们看表达式的执行流程:首先判断x==0是否成立,判断结果是true
成立,那么“||”右边的表达式将不执行,将true的值赋给b,因为右边的表达式不参与运
算,所以y的值还是0
【单项选择】8 、请阅读下面的程序片段 int x = 3; if (x > 5) { ("a"); } else
{ ("b"); } 选择程序的运行结果( ) (难度系数:易)
A、 a
B、 b
C、 ab
D、 编译错误
参考答案:B
答案解析: if语句中的判断条件成立时,会执行if语句中的内容,否则会执行else语句中
的内容,很明显3不大于5所以执行else语句的内容,输出结果为b
【单项选择】9 、下列选项中,关于运算符“^”的描述正确是(难度系数:易)
A、 二进制位有1,则结果为1
B、 二进制位有0,则结果为0
C、 二进制位有相同,则结果为1,不同为0
D、 二进制位有相同,则结果为0,不同为1
参考答案:D
答案解析: 位运算符“^”是将参与运算的两个二进制数进行“异或”运算,如果二进制位
相同,则值为0,否则为1
【单项选择】10 、下列说法中错误的一个是( )。(难度系数:易)
A、 $1_abc是合法的Java标识符
B、 局部变量必须先声明后使用
C、 void是合法的Java保留字
D、 在Java中,类不是用标识符命名的
参考答案:D
【单项选择】11 、请阅读下面的程序 public class Test { public static void main(String[] args)
{ int a[] = {2,0,4,1,8,3,5}; int temp; for (int i = 0; i < - 1; i++) { for (int j = - 1; j > i;
j--) { if (a[j] < a[j - 1]) { temp = a[j]; a[j] = a[j - 1]; a[j - 1] = temp; } } } for (Integer i : a)
{ n(i); } } } 下列选项中,哪一个是程序的运行结果( )(难度系数:易)
A、 8,5,4,3,2,1,0
B、 0,1,2,3,4,5,8
C、 2,0,4,1,8,3,5
D、 5,3,8,1,4,0,2
参考答案:B
答案解析: 数组的冒泡排序法
【单项选择】12 、下列标识符中,正确的是( )。(难度系数:易)
A、 1_Back
B、 $_Money
C、 $-money
D、 2-Foward
参考答案:B
【单项选择】13 、下面浮点型数据的定义中,错误的是( )(难度系数:易)
A、 float a=1.23;
B、 double b=1.23;
C、 double c=1.5E4;
D、 float d='a';
参考答案:A
答案解析: float类型的数据在定义浮点型数据时,必须在后面加上f或F;double类型的
数据在定义时可以在后面加上d或D,也可以不加。
【单项选择】14 、下列标识符中,合法的一个是( )。(难度系数:易)
A、 $#@!$
B、 $--$
C、 2$$2
D、 $22$
参考答案:D
【单项选择】15 、请定义一个由public修饰符修饰的int型成员变量MAX_LENGTH,并使该
值保持为常数100,则定义这个变量的语句是?()(难度系数:易)
A、 public int MAX_LENGTH=100
B、 public const int MAX_LENGTH=100
C、 final int MAX_LENGTH=100
D、 public final int MAX_LENGTH=100
参考答案:D
答案解析: 应题目的要求,需要将该值保持为常数,那么就需要使用关键字final,所以选
择D,const是java的保留关键字,在java中使用final定义常量。
【单项选择】16 、下列说法中,正确的一个是( )。(难度系数:易)
A、 接口属于复合数据类型
B、 接口属于简单数据类型
C、 标识符的总的字符个数是有限的
D、 标识符就是保留字
参考答案:A
【单项选择】17 、下列关于注释语句的描述中,正确的一项是( )。(难度系数:易)
A、 以//开始的是多行注释语句
B、 以/*开始,*/结束的是单行注释语句
C、 以/**开始,*/结束的是可以用于生成帮助文档的注释语句
D、 以/**开始,*/结束的是单行注释语句
参考答案:C
【单项选择】18 、以下字符常量中不合法的一个是( A )。(难度系数:易)
A、 ’a\n’
B、 ’\r’
C、 ’\t’
D、 ’¥’
参考答案:A
【单项选择】19 、设有类型定义short i=32;long j=64;下面赋值语句中不正确的一个是( )。
(难度系数:易)
A、 j=i;
B、 i=j;
C、 i=(short)j;
D、 j=(long)i;
参考答案:B
【单项选择】20 、下列Java语句中,不正确的一个是( )。(难度系数:易)
A、 Double dValue=(float)1233.213f;
B、 double dValue=(float)1.213E2f;
C、 char ch=(char)-1;
D、 char ch=66:
参考答案:A
第4章、类与对象
第1知识点、类
【单项选择】1 、class A { public final void m() { n(“A.m”); } } public class B
extends A { public void m() { n(“B.m”); super.m(); } public static void main(String
[] args) { new B().m(); } } 那么结果为?(难度系数:易)
A、 A.m
B、 B.m
C、 B.m A.m
D、 编译错误
参考答案:D
答案解析: 不能覆盖A中的m(),因为A中的m()是final的
【单项选择】2 、抛出异常,使用关键字(难度系数:易)
A、 try
B、 throw
C、 finally
D、 catch
参考答案:B
答案解析: 声明异常的关键字是throws,抛出异常的关键字是throw
【单项选择】3 、下列关于变量作用域的说法中,正确的是 (难度系数:易)
A、 在main()方法中任何位置定义的变量,其作用域为整个main()方法
B、 块中定义的变量,在块外也是可以使用的
C、 变量的作用域为:从定义处开始,到变量所在块结束位置
D、 变量的作用域不受块的限制
参考答案:C
答案解析: 变量的作用域为:从定义处开始,到变量所在代码块结束位置
【单项选择】4 、已知: class Base { public Base(String s) { (“B”); } } public class
Derived extends Base { public Derived (String s) { (“D”); } public static void
main(String [] args) { new Derived (“C”); } } 那么结果为?(难度系数:易)
A、 BD
B、 DB
C、 C
D、 编译错误
参考答案:D
答案解析: 子类构造函数中默认第一句为super(),调用父类的无参构造方法,但是父类由
于显示地定义了含参构造方法,所以他没有无参构造方法,导致编译错误。
【单项选择】5 、下列关于方法的描述中,正确的是(难度系数:易)
A、 方法是对功能代码块的封装
B、 方法没有返回值时,返回值类型可以不写
C、 没有返回值的方法,不能有return语句
D、 方法是不可以没有参数的
参考答案:A
答案解析: 如果方法没有返回值,则返回值类型要定义为void。方法中没有返回值也可以
使用return语句,格式为return。方法中可以定义参数,也可以不定义参数。
【单项选择】6 、import语句的作用是(难度系数:易)
A、 导入包中成员
B、 创建包
C、 既可导入包成员,也可创建包
D、 访问控制
参考答案:A
【单项选择】7 、下列关于对象的类型转换的描述,说法错误的是( )(难度系数:易)
A、 对象的类型转换可通过自动转换或强制转换进行
B、 无继承关系的两个类的对象之间试图转换会出现编译错误
C、 由new语句创建的父类对象可以强制转换为子类的对象
D、 子类的对象转换为父类类型后,父类对象不能调用子类的特有方法
参考答案:C
答案解析: 由new语句创建的父类对象不能转换为子类的对象,否则会报编译出错
【单项选择】8 、接口中的成员方法被隐含地声明为(难度系数:易)
A、 public static final
B、 protected abstact
C、 private
D、 public abstract
参考答案:D
【单项选择】9 、下列选项中,属于布尔常量的是?( )(难度系数:易)
A、 198
B、 2e3f
C、 true
D、 null
参考答案:C
答案解析: 198属于整型常量,2e3f属于浮点数常量,null属于null常量
【单项选择】10 、下列选项中,用于引入包的关键字是 (难度系数:易)
A、 class
B、 import
C、 package
D、 static
参考答案:B
答案解析: import关键字的作用是引入包
【单项选择】11 、下面代码的输出是 class C { public static void main(String[] args) { int x = 1;
((x > 1) & (x++ > 1)); ( ““); ((x > 1) && (x++ >
1)); } } (难度系数:易)
A、 false true
B、 true false
C、 false false
D、 true true
参考答案:A
答案解析: 运算符 & 和 | 的两个运算对象都要计算
【单项选择】12 、阅读下段代码片段,选择正确的运行结果 public static void main(String[]
args) { { int a = 1; (a); } { int a = 2; (a); } int a = 3;
(a); } (难度系数:易)
A、 123
B、 111
C、 121
D、 编译不通过
参考答案:A
答案解析: 变量的作用域为:从定义处开始,到变量所在块结束位置
【单项选择】13 、对于使用多态的应用程序,某个对象的确切类型何时能知道?( )(难
度系数:易)
A、 执行时才可以知道
B、 应用程序编译时能够判断
C、 程序员编写程序时就已知道
D、 永远不会知道
参考答案:B
答案解析: 如果对象的类型转换错误,那么应用程序编译时能够判断,以此得出答案选B
【单项选择】14 、public class C { public int m(int x) { int r = 1; r += x; if ((x > 5) && (x < 10)) { r +=
2 * x; } else (x <= 4) { r += 3 * x; } else { r += 4 * x; } r += 5 * x; return r; } public static void
main(String [] args) { C o = new C(); n(“m(11) = “ + o.m(11)); } } (难度系数:
易)
A、 m(11) = 45
B、 m(11) = 56
C、 m(11) = 89
D、 m(11) = 111
参考答案:D
【单项选择】15 、请阅读下面的程序 public class Demo { public static void sum(int a, int b)
{ n("int:" + (a + b)); } public static void sum(int a, float b)
{ n("float:" + (a + b)); } public static void sum(int a, double b)
{ n("double:" + (a + b)); } public static void main(String[] args) { int a = 10; long
b = 20; sum(a, b); } } 下列选项中,哪一个是程序的运行结果(难度系数:易)
A、 int:30
B、 float:30.0
C、 double:30.0
D、 int:30.0
参考答案:B
答案解析: 在主方法中定义一个int类型,一个long,按照正常做法,是找对应的类型,
可是没有,这个时候要想到基本类型的隐式转换。Long会自动转到float。所以选择B
第5章、继承与接口
第1知识点、类的继承
【单项选择】1 、如果有2个类A和B,A类基于 B类,则下列描述中正确的一个是( )。(难
度系数:易)
A、 这2个类都是子类或者超类
B、 A是B超类的子类
C、 B是A超类的子类
D、 这2个类都是对方的子类
参考答案:B
【单项选择】2 、java语言的类间的继承关系是( )。(难度系数:易)
A、 多重的
B、 单重的
C、 线程的
D、 不能继承
参考答案:B
【单项选择】3 、已知类的继承关系如下: class A class B extends A class C extends A 则以下
语句中能够通过编译的是?( ) (难度系数:易)
A、 A a=new B();
B、 C c=new B();
C、 C c=new A();
D、 B b=new C();
参考答案:A
答案解析: 假设A为犬类,B为狗,C为狼,那么狗当然属于犬类对象
【单项选择】4 、现有两个类A、B,以下描述中表示B继承自A的是?()(难度系数:易)
A、 class A extends
B、 class B implements A
C、 class A implements B
D、 class B extends A
参考答案:D
答案解析: 类的继承 关键字 extends在Java中,类的继承是通过extends关键字表示的,
要想描述B继承自A,则正确的写法是class B extends A。
【单项选择】5 、下列关于继承的描述中,错误的是()(难度系数:易)
A、 在Java中,类只支持单继承,不允许多重继承,也就是说一个类只能有一个直接父类
B、 多个类可以继承一个父类
C、 在Java中,多层继承是可以的,即一个类的父类可以再去继承另外的父类,例如C类
继承自B类,而B类又可以去继承A类,这时,C类也可称作A类的子类
D、 Java是支持多继承的
参考答案:D
答案解析: Java不支持多继承
第6章、内部类与异常类
第1知识点、内部类
【单项选择】1 、下列程序运行结果是( ) public class Demo { public static void main(String[]
args) { Demo demo = new Demo(); (new Car() { public void run()
{ n("demo run"); } }); } public void show(Car c) { (); } } abstract class Car
{ public void run() { n(""); } } (难度系数:易)
A、 car run
B、 demo run
C、 无结果
D、 编译报错
参考答案:B
答案解析: 使用在show()方法中传入匿名内部类对象,匿名内部类中重写了父类Car中run()
方法
【单项选择】2 、在Java语言中,以下哪个关键字用于在方法上声明抛出异常? (难度系
数:易)
A、 try
B、 catch
C、 throws
D、 throw
参考答案:C
【单项选择】3 、下列关于匿名内部类的描述,错误的是( )(难度系数:易)
A、 匿名内部类是内部类的简化形式
B、 匿名内部类的前提是必须要继承父类或实现接口
C、 匿名内部类的格式是'new 父类(参数列表) 或 父接口(){}'
D、 匿名内部类可以有构造方法
参考答案:D
答案解析: 匿名内部类不能有构造方法,它连类名都没有
【单项选择】4 、Outer类中定义了一个成员内部类Inner,需要在main()方法中创建Inner
类实例对象,以下四种方式哪一种是正确的? (难度系数:易)
A、 Inner in = new Inner()
B、 Inner in = new ();
C、 in = new ();
D、 in = new Outer().new Inner();
参考答案:D
【单项选择】5 、下列描述中,哪一项不属于finally语句应陔执行的功能( )?(难度系数:
易)
A、 释放资源
B、 关闭文件
C、 分配资源
D、 关闭数据库
参考答案:C
第8章、常用组件及事件处理
第1知识点、界面布局
【单项选择】1 、Java 的屏幕坐标系的(0,0)在屏幕的(难度系数:易)
A、 中心
B、 左上角
C、 左下角
D、 右下角
参考答案:B
【单项选择】2 、下列说法中,正确的一项是( )。(难度系数:易)
A、 AWT的高级事件依赖于触发此类事件的类,可以和特定的动作相关联
B、 AWT的高级事件依赖于触发此类事件的类,可以不和特定的动作相关联
C、 AWT的低级事件是在构件或者容器上发生的事件
D、 AWT的低级事件是基于语义的事件,不一定和特定的动作相关联
参考答案:C
【单项选择】3 、布局管理器可以管理构件的哪个属性?( )。(难度系数:易)
A、 大小
B、 颜色
C、 名称
D、 字体
参考答案:A
【单项选择】4 、编写AWT图形用户程序的时候,一定要import的语句是( )。(难度系数:
易)
A、 import ;
B、 import .*;
C、 import .*;
D、 import .*;
参考答案:B
【单项选择】5 、处理按钮点击事件的类需要实现哪个接口(难度系数:易)
A、 FocusListener
B、 ActionListener
C、 WindowListener
D、 ItemListener
参考答案:B
【单项选择】6 、下列说法中错误的一项是( )。(难度系数:易)
A、 LayoutManager是一个接口,编程时通常使用的是实现该接口的类
B、 布局管理器体现了Java平台无关性
C、 每个容器都对应一个布局管理器
D、 在Java中,必须直接设置构件在容器中的位置和直接设置构件的大小
参考答案:D
【单项选择】7 、下列关于MVC体系结构的说法中错误的一项是( )。(难度系数:易)
A、 模型是指定的逻辑表示方法
B、 视图是模型的可视化表示方法
C、 控制用于指定用户输入的处理机制
D、 MVC体系结构用于AWT中
参考答案:D
【单项选择】8 、
JFrame 的缺省布局管理器是
(难度系数:易)
A、 BorderLayout
B、 FlowLayout
C、 GridLayout
D、 BoxLayout
参考答案:A
第9章、Java多线程机制
第1知识点、线程
【单项选择】1 、Thread类位于下列哪个包中? A. B. C. D.
(难度系数:易)
A、
B、
C、
D、
参考答案:B
【单项选择】2 、下列哪一个类实现了线程组?( )(难度系数:易)
A、
B、 Group
C、
D、 le
参考答案:B
【单项选择】3 、线程调用sleep()方法后,该线程将进入以下哪种状态? (难度系数:易)
A、 就绪状态
B、 运行状态
C、 阻塞状态
D、 死亡状态
参考答案:C
【单项选择】4 、在以下哪种情况下,线程进入就绪状态?(难度系数:易)
A、 线程调用了sleep()方法时
B、 线程调用了join()方法
C、 线程调用了yield()方法时
D、 线程调用了notify()方法
参考答案:D
第10章、输入输出流
第1知识点、流对象
【单项选择】1 、下列选项中,哪一个属于输出流?( )(难度系数:易)
A、 从打印机流向控制器的数据流
B、 从键盘流向内存的数据流
C、 从内存流向控制器的数据流
D、 从内存流向网络的数据流
参考答案:D
【单项选择】2 、Fileoutputstream类的父类是( )。(难度系数:易)
A、 File
B、 FileOutput
C、 OutputStream
D、 InputStream
参考答案:C
【单项选择】3 、下列说法中,错误的一项是( )。(难度系数:易)
A、 Java系统的标准输入对象是
B、 打开一个文件时不可能产生IOException
C、 使用File对象可以判断一个文件是否存在
D、 使用File对象可以判断一个目录是否存在
参考答案:B
【单项选择】4 、下面哪个类不能直接读取磁盘文件(难度系数:易)
A、 FileReader
B、 RandomAccessFile
C、 FilterReader
D、 FileInputStream
参考答案:C
答案解析: FilterReader是一个用于读取已过滤的字符流的抽象类
版权声明:本文标题:Java高级语言程序设计期末复习资料(1) 内容由网友自发贡献,该文观点仅代表作者本人, 转载请联系作者并注明出处:http://roclinux.cn/p/1735715233a1683540.html, 本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容,一经查实,本站将立刻删除。
发表评论