面向对象技术Java期末复习试卷三汇总.docx
期末复习试卷三一、 单项选择题1、有一段应用程序,其中包含一个公共类,名字为,那么保存它的源文件名是 A. B. C. D. 正确答案:C 解析:一个文件中可以包含多个类,但最多只能有一个类是公共类,该文件的名字要及公共类的一致。2、关于下面的代码,哪个描述是正确的? ( n1 = (3; n2 = (4; (n1(n2; A. 可以编译通过,可以运行,并得到预期结果。B. 可以编译通过,可以运行,但不能得到预期结果。C. 可以编译通过,但又运行错误。D. 有编译错误。正确答案:D 解析:类是根本数据类型的包装类,里面封装了一个类型的值,提供了一些实用的方法例如:在中读取文本框内容是类型的,如果要转换成类型,就要调用类的(方法并实现了接口,在接口中定了抽象方法(T o, T是泛型,对于类,T被替换为,如以下图:因此,类中(方法的定义如下:因此,的参数只能是类型的,所以代码中的下面语句中的n2的类型需要进展强制类型转换,由转为:(n1(n2;正确写法如下:(n1( n2; 类似的包装类还有等,都是将根本数据类型包装为类。3、下面哪种类型不是引用数据类型? A. 数组B. C. D. 正确答案:B 解析:根本数据类型只是存放数据,不提供功能即方法包括4类八种:布尔类型:字符类型:整数类型:, , , 浮点类型:,引用数据类型包括类、接口、抽象类、数组本质上是类,引用类型可以提供功能。注意:是一个类,所以可以使用 s = (""的方式创立对象;数组也是一个类,所以需要用创立对象。4、类要定义一个无参数、无返回值的方法,并能够通过(的方式调用方法,那么方法的定义形式为 ( 。A. ( B. ( C. ( D. ( 正确答案:A 解析:静态方法也叫类方法可以不创立对象,而直接通过类名调用。5、以下关于接口说法正确的选项是 ( 。A. 抽象类中的方法不全都是抽象的,因此可以创立对象。B. 接口的引用既可以调用实现类重写的接口的方法,也可以调用实现类新增的方法。C. 接口的实现类可以实现接口的局部方法。D. 接口的方法都是抽象的,因此不可以创立对象。正确答案:D 解析:选项A的前半句是对的,后半句错了。选项B前半句是对的,后半句不对。例如如下: (; ( . ( ( c = (;(; 访问实现类覆盖接口的方法可以c. ( 错误:不可以访问实现类新增的方法 选项C错误,实现类必须实现接口的所有的抽象的方法。6、将类的成员方法的访问权限设置为默认的,那么该成员方法能被( 。A. 同一包中的类访问B. 其他包中的类访问C. 所有的类访问D. 所有的类的子类访问正确答案:A 解析:注意此题可以继续扩展,例如把访问权限换成。7、以下哪个是应用程序主类中正确的方法声明? ( A. ( B. ( C. ( aD. ( 正确答案:D 8、有一段应用程序,其中包含一个公共类,名字为,那么保存它的源文件名是 A. B. C. D. 都对正确答案:A 及第1个选择题类似。9、以下哪个是提供的编译器? A. B. C. D. 正确答案:B 10、某个源文件如下 那么保存它的源文件名是 A. B. C. D. 正确答案:A 参考第1、8题。11、以下定义一位数组的语句中,正确的选项是 A. a5;B. a 5;C. a; a = 5;D. a = 1,2,3,4,5;正确答案:D 选项A: 中的数组是类,需要使用关键字创立。选项B:落类型了,正确写法为 a = 5;选项C:重复定义变量a,正确写法: a; a = 5;12、类实现接口,覆盖其中的(方法。下面哪个是正确的类中被重写的(方法的方法头?A. ( oB. ( oC. ( oD. ( o正确答案:A 解析:接口的定义如下:接口的实现类必须覆盖在接口中定义的抽象的方法,覆盖就意味在实现类中的方法要及在接口中定义的抽象方法同名、同参、同返回值。13、将类的某个成员方法的访问权限设置为的,那么下面说法正确的选项是 。A. 同一包中的其他类不可以访问该方法 B. 不同包中的子类可以访问该方法C. 所有包中的类都可以访问该方法 D. 所有包中的类都不可以访问该方法。正确答案:B 14、以下哪一个类声明是错误的?( A. AB. AC. AD. A正确答案:C 解析:类只能被默认或者修饰符修饰,这是及成员变量和成员方法不一样的地方。15、下面关于数组和集合的说法,哪一个是错误的? A. 数组的长度一旦确定,不能修改;B. 集合的长度可变,但是效率比数组低;C. 数组和集合都属于引用类型;D. 数组使用泛型指明所存储的对象的类型。正确答案:D 解析:是集合的一种类型。集合使用泛型指明所存储的对象的类型。16、下面代码有错误的行是:。1: 13072: ( 3: x = (3;4: (;5: ( (4;6: 7: A. 2B. 3C. 4D. 5正确答案:D 解析:1 查帮助文档,是的父类,没有实现接口,而子类实现了接口,即子类新增了(方法。2 x的声明类型是,实际类型是,根据父类引用不能调用子类新增的方法的原那么,x不可以直接调用(方法。3 如果需要修改代码中的错误,可以进展强制类型转换,如下:( (4;17、 = 1,4,7,2,5,6,0,该数组第1个和最后1个元素的下标为哪一项? ( A. 0,7B. 1,6C. 0,6D. 1,7正确答案:C 18、假设是一个类型的二维数组,下面关于的声明和初始化,哪一项为哪一项错误的?( A. = 1,2,3,4,5; B. = 23;C. = 2; D. = 3;正确答案:D 解析:的二维数组是由一维数组模拟的,例如如下:没有第一维,就不会有第二维,所以,创立数组的时候,不能只指明第二维,不指明第一维。但可以仅指明第一维,不指明第二维,如选项C。19、下面说法哪一个是错误的? A. 构造方法的名称及类名一样。B. 构造方法返回值可以为。C. 一个类可以有多个构造方法。D. 在一个类中可以使用调用该类的其他构造方法。正确答案:B 解析:构造方法的作用是创立对象,因此,本质上,构造方法是有返回值的,其返回值就是它创立的对象。但是,由于即使不指明构造方法的返回值,也知道其返回值类型,因此,构造方法的返回值类型省略掉了。但是绝对不能用,表示没有返回值。20、下面关于接口的定义哪个是正确的?A. A ( ;B. A I12 (;C. A(;D. A (;正确答案:D 解析:1前面没有修饰;2接口中的方法都是抽象的,因此不能有方法体,即。21、下面关于多态的说法,正确的选项是 。A. 一个类中不能有同名的方法;B. 子类中不能有和父类中同名的方法;C. 子类中可以有和父类中名字一样,且参数一样的方法;D. 多态性就是方法的名字和参数可以一样,但返回值的类型必须不一样。正确答案:C 22、用于定义类成员的访问控制权的一组关键字是 A. , , , B. , , , C. , , , D. , , 正确答案:D 23、下面关于接口的说法哪一条是错误的? A. 接口是一种特殊的抽象类,接口的方法都是抽象方法;B. 类可以实现接口;C. 接口和子接口可以有自己的实例对象;D. 可以使用接口声明引用,引用实现本接口或子接口的类的对象。正确答案:C 解析:接口中的方法都是抽象的,不能创立实例;类似的,抽象类也不可以创立实例。24、下面关于抽象类的说法,哪一条是错误的 A. 抽象类可以不包含抽象方法;B. 一个类只要有一个抽象方法,就是抽象类;C. 抽象类不能创立对象,创立对象的工作由抽象类的具体子类来实现;D. 对于抽象类中的抽象方法来说,在抽象类中既要指定方法名和参数,又要指定实现代码。正确答案:D 解析:抽象方法没有方法体,因此不可能有实现代码。25、源程序经过编译后得到的类文件的扩展名是哪一个项? A. B. C. D. 正确答案:C 26、类是类的子类,的构造方法中有一句(,该语句是 。A. 调用类中定义的(方法 B. 语法错误C. 调用类的构造方法 D. 调用类中定义的(方法正确答案:C 27、关于覆盖和重载,下面说法哪一个是错误的? A. 一个类中包含多个同名但参数不同的方法,这些方法构成了重载。B. 普通的成员方法可以重载,但构造方法不可以重载。C. 如果在子类中定义的方法及其父类的某个方法具有一样的名称、参数和返回值,那么称子类的方法覆盖了父类的方法。D. 当父类的方法不能满足子类的要求时,子类可覆盖父类的方法;当一种功能有多种实现时,可使用重载来提供多个同名不同参的方法。正确答案:B 解析:构造方法也可以重载,即一个类可以有多个构造方法。28、下面的代码说明类A和类B之间是什么关系? A B A A. 关联B. 继承C. 依赖D. 实现正确答案:B 29、下面代码的错误出现在。1: 13082: ( 3: x = (3;4: (;5: ( (4;6: 7: A. 2B. 3C. 4D. 5正确答案:D 30、以下关于继承的概念,哪项表达是正确的? A. 在中,允许一个类继承多个父类;B. 在中,一个类只能实现一个接口;C. 在中,一个类不能同时继承一个类和实现一个接口;D. 的单一继承使代码更可靠。正确答案:D 解析:采用单继承,即只能有一个父类,但可以实现多个接口。二、 程序题1、是几何图形抽象类,类继承了类,同时实现了<>接口,三者的类图如下: 提示:<T>接口在包中已经定义,不需要自己写。解题要求:编写测试类,要求如下:1创立类的对象c1和c2,设定c1的半径为5,c2的半径为6。2输出c1和c2的半径;c1的周长和面积;调用c1的( o 方法及c2比拟,输出比拟结果。3将c1的半径改为8,按照2中的要求输出信息。4将c1的半径改为6,按照2中的要求输出信息。样例如下 2; ( c1 = (5; c2 = (6;("c1的半径是" + c1(;("c2的半径是" + c2(;("c1的周长是" + c1(;("c1的面积是" + c1(; (c1(c21("c1比c2大" (c1(c21("c1比c2小" ("c1及c2相等"(;c1 = (8;("c1的半径是" + c1(;("c2的半径是" + c2(;("c1的周长是" + c1(;("c1的面积是" + c1(; (c1(c21("c1比c2大" (c1(c21("c1比c2小" ("c1及c2相等"(;c1 = (6;("c1的半径是" + c1(;("c2的半径是" + c2(;("c1的周长是" + c1(;("c1的面积是" + c1(; (c1(c21("c1比c2大" (c1(c21("c1比c2小" ("c1及c2相等" (; (; r; ( ( r = r; ( r; ( r = r; ( * r * r; ( 2 * * r; ( o (r > ( 1; ( r < ( -1; 0;