2024年2月1日发(作者:)
java期末考试复习题及答案
Java程序设计》课程试卷
语言编写的源程序保存时的文件扩展名是(B).java。
2.若int a=-2,则表达式a。3的值为(C)8.
3.下列对数组元素的引用错误的是(C)a[3]。因为数组下标从0开始,a[3]超出了数组的范围。
4.在类的定义中可以有两个同名函数,这种现象称为函数(D)重载。
5.构造函数的作用是(D)初始化成员变量。
6.下列关键字中,哪一个不是用于异常处理语句(B)break。
7.类与对象的关系是(A)类是对象的抽象。
8.下列哪一个是Java中不合法的标识符(D)*point。
9.为AB类的一个无形式参数无返回值的方法method书写方法头,使得使用类名AB作为前缀就可以调用它,该方法头的形式为(A)static void method()。
10.欲构造ArrayList类的一个实例,此类继承了List接口,下列哪个方法是正确的(C)ArrayList myList=new ArrayList()。
源文件和编译后的文件扩展名分别为(B).java和.class。
12.在Java中,如果需要在用户自定义的Applet子类中进行画图操作,一般需要重载父类的paint()方法。
13.对于一个Java源文件,正确的顺序应该是先package,再import,最后是class定义。
14.非法的代码是char c = 'u'。因为单引号中只能包含一个字符。
语言使用的字符码集是Unicode。
16.如果一个类的成员变量只能在所在类中使用,则该成员变量必须使用private修饰。
17.正确的main方法定义应该是public static void
main(String[] args)。
18.加互斥锁的关键字是synchronized。
19.抽象方法是没有方法体的方法,而且只能出现在抽象类中。
20.包中的File类是字节流类。
应用程序的主类必须包含main方法,正确的形参是String[] args。
22.执行以下代码段的输出结果为-1.
int x = -3;
int y = -10;
n(y % x);
23.在Java中,正确的继承叙述是B。一个类可以实现多个接口,但只能继承一个类。
24.对于定义byte[] x = {11.22.33.-66},其中0 ≤ k ≤ 3,错误的引用是x[k+5]。
()方法使用的参数类型是Color。
n不是Java的原始数据类型。
27.在Java中,一个类可以定义多个同名方法,这些方法可以有不同的形式参数,返回值也可以不同。这种特性称为方法重载。
28.正确的构造方法说法是:一个类可以有多个构造方法,构造方法在创建对象时被调用,构造方法可以和类名相同或不同。
29.在浏览器中执行applet程序时,最先执行的方法是start()。
31.该方法的返回类型是short。
32.合法的抽象类定义是:abstract Animal {abstract void
growl();}。
33.不能插入的选项是D,因为一个Java文件只能有一个public类,而且文件名必须与public类名相同。
改写:在Java中,一个文件只能有一个public类,并且文件名必须与public类名相同。因此,选项D不能插入到行1.
34.正确的说法是A,因为a是一个整数类型的变量,而b是一个整数类对象,通过调用intValue()方法将其转换为整数类型的值。两者的值相等,都是12.
改写:a是一个整数类型的变量,而b是一个整数类对象。通过调用intValue()方法,将b转换为整数类型的值。虽然a和b的类型不同,但它们的值都是12.
35.在编写Java Applet程序时,需要使用import
;语句。
改写:编写Java Applet程序时,需要在程序开头使用import ;语句。
不属于Swing的顶层。
改写:Swing的顶层包括JApplet、JDialog和JFrame,但不包括JTree。
37.要使包ch4在当前程序中可见,可以使用import ch4.*;语句。
改写:为了在当前程序中使用包ch4,可以使用import
ch4.*;语句。
38.所有的异常类都继承自ble类。
改写:在Java中,所有的异常类都是ble类的子类。
39.进行Java基本的GUI设计需要使用包。
改写:要进行Java基本的GUI设计,需要使用包。
B.for循环先判断后执行,while循环先执行后判断。
8、以下哪个不是Java的基本数据类型?(。C。)
A、int。B、float。C、string。D、double
9、以下哪个修饰符可以修饰类、方法和变量?(。D。)
A、public。B、private。C、protected。D、static
10、下面哪个是Java中的关键字?(。A。)
A、class。B、n。C、re。D、process
11、以下哪个方法可以将字符串转换为整数?(。B。)
A、parseInt()。B、valueOf()。C、toString()。D、toInteger()
12、下面哪个运算符可以实现逻辑与操作?(。A。)
A、&&。B、||。C。D、&
13、以下哪个方法可以获取字符串的长度?(。C。)
A、size()。B、length()。C、length。D、getSize()
14、以下哪个方法可以将字符串转换为大写?(。A。)
A、toUpperCase()。B、toLowerCase()。C、toUpper()。D、toUpperString()
15、以下哪个方法可以将字符串转换为小写?(。B。)
A、toUpperCase()。B、toLowerCase()。C、toLower()。D、toLowerString()
中的标识符是哪个?(A)
A。fieldname。B。super。C。3number。D。#number
2.如果x = 1,y = 2,z = 3,则表达式y += z-- / ++x的值是多少?(A)
A。3.B。3.5.C。4.D。5
3.下面的代码段执行后count的值是什么?(D)
int count = 1;
for (int i = 1.i <= 5.i++) {
count += i;
n(count);
A。5.B。1.C。15.D。16
4.为AB类的一个无形式参数无返回值的方法method书写方法头,使得使用类名AB作为前缀就可以调用它,该方法头的形式为什么?(A)
A。static void method()。B。public void method()。C。final void method()。D。abstract void method()
5.下列程序段执行后的结果是什么?(A)
String s = new String("abcdefg");
for (int i = 0.i < ()。i += 2) {
((i));
A。XXX
6.下面程序段执行后b的值是什么?(B)
Integer XXX(9);
boolean b = integ instanceof Object;
A。9.B。true。C。1.D。false
7.关于for循环和while循环的说法哪一个正确?(B)
A。while循环先判断后执行,for循环先执行后判断。
B。for循环先判断后执行,while循环先执行后判断。
8.以下哪个不是Java的基本数据类型?(C)
A。int。B。float。C。string。D。double
9.以下哪个修饰符可以修饰类、方法和变量?(D)
A。public。B。private。C。protected。D。static
10.下面哪个是Java中的关键字?(A)
A。class。B。n。C。re。D。process
11.以下哪个方法可以将字符串转换为整数?(B)
A。parseInt()。B。valueOf()。C。toString()XXX()
12.下面哪个运算符可以实现逻辑与操作?(A)
A。&&。B。||。C。D。&
13.以下哪个方法可以获取字符串的长度?(C)
A。size()。B。length()。C。length。D。getSize()
14.以下哪个方法可以将字符串转换为大写?(A)
A。toUpperCase()XXX()XXX()。D。toUpperString()
15.以下哪个方法可以将字符串转换为小写?(B)
A。toUpperCase()XXX()XXX()。D。toLowerString()
C.while循环先判断再执行,do…while循环先执行再判断
D.do…while循环至少执行一次,而while循环可能一次都不执行
3.以下哪个不是Java的基本数据类型?(D)
A.XXX
4.以下哪个关键字可以用于定义常量?(A)
A.XXX
5.以下哪个关键字可以用于定义抽象类?(B)
A.XXX
6.以下哪个关键字可以用于定义接口?(C)
A.XXX
7.以下哪个说法关于循环结构正确?(B)
A.while循环和for循环可以互相替换
B.while循环的判断条件一般是程序结果,for循环的判断条件一般是非程序结果
C.两种循环结构中循环体可以为空
D.两种循环结构中循环体必须至少包含一条语句
1.关于选择结构,正确的说法是:(B)
A。if语句和else语句必须成对出现
B。if语句可以没有else语句对应
C。switch结构中每个case语句中必须用break语句
D。switch结构中必须有default语句
循环和do…while循环的区别是:(D)
A。没有区别,这两个结构任何情况下效果一样
B。while循环比do…while循环执行效率高
C。while循环先判断再执行,do…while循环先执行再判断
D。do…while循环至少执行一次,而while循环可能一次都不执行
3.以下哪个不是Java的基本数据类型?(D)
A。int
B。double
C。char
D。string
4.以下哪个关键字可以用于定义常量?(A)
A。final
B。static
C。public
D。private
5.以下哪个关键字可以用于定义抽象类?(B)
A。final
B。abstract
C。static
D。private
6.以下哪个关键字可以用于定义接口?(C)
A。final
B。abstract
C。interface
D。private
7.关于循环结构,正确的说法是:(B)
A。while循环和for循环可以互相替换
B。while循环的判断条件一般是程序结果,for循环的判断条件一般是非程序结果
C。两种循环结构中循环体可以为空
D。两种循环结构中循环体必须至少包含一条语句
8.关于对象成员占用内存的说法,正确的是:(B)
A。同一个类的对象共用同一段内存
B。同一个类的对象使用不同的内存段,但静态成员共享相同的内存空间
C。对象的方法不占用内存
D。以上都不对
9.关于继承的说法,正确的是:(B)
A。子类将继承父类所有的属性和方法。
B。子类将继承父类的非私有属性和方法。
C。子类只继承父类public方法和属性
D。子类只继承父类的方法,而不继承属性
10.覆盖与重载的关系是:(A)
A。覆盖只有发生在父类与子类之间,而重载可以发生在同一个类中
B。覆盖方法可以不同名,而重载方法必须同名
C。final修饰的方法可以被覆盖,但不能被重载
D。覆盖与重载是同一回事
11.下面哪一个import命令可以为我们提供编写网络应用程序的类?(D)
A。import .*;
B。import .*;
C。import。*;
D。import。*;
12.如果组件p的布局是BorderLayout,则在p的下边中添加一个按钮b,应该使用的语句是:(C)
A。(b);
XXX(b,"North");
XXX(b,"South");
XXX(p,"North");
对象默认的布局管理器是:(B)
A。FlowLayout
B。XXX
C。CardLayout
D。null
14.如果需要从文件中读取数据,则可以在程序中创建哪一个类的对象?(A)
A。FileInputStream
B。FileOutputStream
C。DataOutputStream
D。FileWriter
和super是关键字,用于在类中引用当前对象和父类对象,不能用在main()方法中。
是指当前对象的父类对象的内存地址。
17.覆盖只有发生在父类与子类之间,而重载可以发生在同一个类中。
18.实现一个接口必须实现接口的所有方法。
19.异常包含程序执行过程中遇到的事先没有预料到的情况。
20.对于已经被定义过可能抛出异常的语句,在编程时必须使用try/catch语句处理异常,或用throws将其抛出。
21.字符流与字节流的区别在于每次读写的字节数不同。
treamReader不属于字节流。
1.在面向对象的方法中,一个对象请求另一个对象为其服务的方式是通过发送消息。
程序并行机制的特点是多线程。
3.编写和运行Java applet程序需要编写HTML文件调用该小程序,以.html为扩展名存入相同文件夹。
的字符类型采用的是Unicode编码方案,每个Unicode码占用16个比特位。
5.正确答案为D,基本类型数值数据的默认初始值为0.
6.下列代码的执行结果是:1,1.0.
9.若要把变量声明为暂时性变量,应使用transient修饰符。
10.在Java中,一个类可同时定义许多同名的方法,这些方法的形式参数的个数、类型或顺序各不相同,传回的值也可以不相同,这种面向对象程序特性称为重载。
11.如要抛出异常,应用throws子句。
12.在使用interface声明一个接口时,只可以使用public修饰符修饰该接口。
14.为读取的内容进行处理后再输出,需要使用Filter
stream。
15.为实现多线程之间的通信,需要使用管道流(Pipe
stream)才合适。
中的流主要分为四种类型,分别是过滤流、文件流、随机访问流和管道流。
与AWT的主要区别在于Swing是使用纯Java实现的轻量级构件,不依赖于操作系统的支持。
3.注释的基本原则包括增加代码的清晰度、简洁明了,应该在写代码之前写注释,以及尽量给每一条语句加注释。
4.包中定义了多个流类型,根据功能可以分为输入流和输出流,根据内容可以分为字节流和字符流,根据分工可以分为节点流和处理流。
5.数组x定义为String x[][] = new String[3][2],则的值为3,x[0][1].length()的值为5.
语言的变量由变量名、变量类型、变量属性和初值组成。
7.当程序中需要抛出异常时,应该使用throw子句;当需要在方法中声明可能抛出的异常类型时,应该使用throws子句。
中提供的GUI功能主要由包和包中的类和接口实现。
源程序文件的扩展名为.java,字节码文件的扩展名为.class。
语言的类型检查机制要求对于没有返回值的方法,在其前面必须加void进行说明。
11.类是Java语言的一种引用数据类型,所有的对象均通过new运算符分配内存,并对内存进行自动管理。
12.每个Java应用程序可以包括许多方法,但是必须有且只能有一个main()方法,格式为public static void main(String[]
args),它是程序执行的入口。
13.如果要在程序中定义一个公用的int型的类成员变量MAX_LENGTH,并且该变量的值保持常数值1000,则定义该变量为public static final int MAX_LENGTH = 1000.
1.量的语句是public int MAX_LENGTH = 1000.
2.子类必须通过关键字super调用父类有参数的构造函数。
3.在Java语言中,所有的类都是Object类的子类。
4.在Java程序中,通过类的定义只能实现单重继承,但通过接口的定义可以实现多重继承关系。
5.如果在Java程序中,需要使用包中的所有类,则应该在程序开始处加上语句import .*。
6.下列程序的运行结果是.
public class ex2 {
public static void main(String[] args) {
for (int cnt = < ++) {
if (cnt == 5)
break;
(cnt);
源文件中最多只能有1个公共类,其它类的个数不限。
8.在Java中所有实现的多维数组,实际上是由一维数组构成的数组的数组。
9.设x=15,则表达式(x++)/4的值是3.
10.抽象方法是一种仅有方法头,没有具体方法体和操作实现的方法,该方法必须在抽象类之中定义。
()方法用于定义线程的执行体。start()方法用于启动线程。
str1 = "abc";
String str2 = new String("abc");
n(str1 == str2);则程序运行后输出结果为:false。
语言中,有一个类是所有类或接口的父类,这个类的名称是Object。
14.当启动Applet程序时,首先调用的方法是init()。
语言是一种完全的面向对象的,适用于网络环境程序设计语言。
16.如果一个Java Applet源程序文件只定义有一个类,该类的类名为MyApplet,则类MyApplet必须是Applet类的子类并且存储该源程序文件的文件名为。
29.设int x = 2,则表达式(x++)/3的值是0.因为x++先使用x的值再将x加1,所以表达式的值为2/3,即0.
提供的访问权限修饰符有4个,即:public、private、protected和默认。这些修饰符用于控制类、方法和变量的可见性和访问权限。
中有两种常用的字符串类,一个是String,另一个是StringBuilder。String类是不可变的,而StringBuilder类可以进行修改操作。
实现多线程的方法有两种,一种方法是通过创建Thread类的子类实现多线程,另一种方法是定义一个实现
Runnable接口的类。这两种方法都可以实现多线程,但是实现Runnable接口的方法更灵活,可以避免单继承的限制。
不支持多继承。但它允许一个类同时实现多个接口,这就相当于部分实现了多继承。接口可以定义一组方法和常量,实现接口的类必须实现接口中的所有方法。
源文件中,import语句位于package语句之后、类定义之前。Package、import、class这三个关键字在Java程序中都有特定的作用,用于控制程序的结构和可见性。
StreamWriter类是OutputStream类的子类,用来处理以文件作为数据输出的数据流。它将字符流转换为字节流,并将其写入到文件中。OutputStreamWriter类可以设置字符集编码,以便正确地处理不同的字符集。
1.如果将类MyClass声明为public,它的文件名必须是才能正常编译。这是因为Java要求文件名和类名必须一致,而且public类必须放在以类名命名的文件中。
2.面向对象有三大特点分别是继承、封装、多态。继承可以实现代码重用和类的层次结构,封装可以隐藏类的实现细节并保护数据,多态可以提高程序的灵活性和可扩展性。
3.设x = 2,则表达式( x++ )/3的值是0.因为x++先使用x的值再将x加1,所以表达式的值为2/3,即0.
4.在Java的基本数据类型中,char型采用Unicode编码方案,每个Unicode码占用2字节内存空间。这种编码方案可以支持全球范围内的字符集,包括中文、日文、韩文等。
中用于两个数相等比较的运算符是:(==),用于不相等比较的运算符是(!=)。这些运算符可以用于比较基本数据类型和对象引用类型。
6.在Java中声明一个字符串类型的变量str的语句是:String str。定义一个具有10个元素的整型数组a的语句是:int[] a = new int[10]。这些语句用于声明和定义变量,可以在程序中使用。
7.设有数组定义:int MyIntArray[] =
{10,20,30,40,50,60,70};则执行以下几个语句后的输出结果是20+40+60=120.
int s = 0;
for (int i = 0.i < 。i++) {
if (i % 2 == 1) {
s += MyIntArray[i];
n(s)。
这段代码用于遍历数组并计算奇数下标对应的元素之和。
9.异常处理是由try、catch和finally块三个关键字组成的程序块。try块用于包含可能抛出异常的代码,catch块用于捕获异常并处理,finally块用于释放资源和清理工作。异常处理可以提高程序的健壮性和可靠性。
1.请简述Java中的多态性是什么?
Java中的多态性是指同一类对象在不同情况下的多种表现形式。它通过继承、接口、方法重载和方法重写等实现,可以提高代码的灵活性和可扩展性。
2.请简述Java中的异常处理机制是什么?
Java中的异常处理机制是指通过try-catch-finally语句块来捕获和处理程序中的异常情况,保证程序的正常运行。可以通过自定义异常类来实现对特定异常的处理。
3.请简述Java中的线程同步是什么?
Java中的线程同步是指通过同步锁机制来保证多个线程对共享资源的访问顺序和互斥性,避免出现数据竞争和不一致性的问题。可以使用synchronized关键字和Lock接口实现线程同步。
4.请简述Java中的访问控制修饰符有哪些?
Java中的访问控制修饰符包括public、protected、private和默认访问控制符。它们分别用于控制类、方法、变量等成员的访问权限。其中,public表示公共的,可以被任何类访问;protected表示受保护的,可以被同一包内的类和子类访问;private表示私有的,只能被本类访问;默认访问控制符表示同一包内的类可以访问。
Java的基本数据类型包括float、int、char、byte、double、long、short和boolean,而String不是基本类型。
继承是一种实现类之间共享属性和方法的方式。一个类可以通过继承另一个类的属性和方法,而无需重新定义。被继承的类称为父类,继承的类称为子类,而且可以多层继承。
在Java I/O中,字符流和字节流是不同的。字符流处理的单元是2个字节的Unicode字符,可以操作字符、字符数组或字符串,而字节流处理单元是1个字节,可以操作字节和字节数组。
创建线程有两种方法。一种是通过继承Thread类,重写run方法,创建Thread对象并调用start方法。另一种是通过实
现Runnable接口,实现run方法,创建Thread对象并将实现了Runnable接口的类的对象作为参数,最后调用start方法。
抽象类和接口有一些区别。接口中的所有方法都是抽象的,而抽象类可以定义带有方法体的不同方法。一个类可以实现多个接口,但只能继承一个抽象父类。接口与实现它的类不构成继承体系,而抽象类是属于一个类的继承体系。接口中的方法默认是public abstract的,而成员变量默认是public static常量。
本文发布于:2024-02-01 04:41:39,感谢您对本站的认可!
本文链接:https://www.4u4v.net/it/170673369933930.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
留言与评论(共有 0 条评论) |