版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
面向对象技术Java期末复习试卷(三)面向对象技术Java期末复习试卷(三)面向对象技术Java期末复习试卷(三)xxx公司面向对象技术Java期末复习试卷(三)文件编号:文件日期:修订次数:第1.0次更改批准审核制定方案设计,管理制度期末复习试卷(三)单项选择题1、有一段java应用程序,其中包含一个公共类,名字为TestStudent,那么保存它的源文件名是()A.B.teststudent.classC.D.正确答案:C解析:一个java文件中可以包含多个类,但最多只能有一个类是公共类(public),该java文件的名字要与公共类的一致。2、关于下面的代码,哪个描述是正确的publicclassTest{publicstaticvoidmain(String[]args){Integern1=newInteger(3);Objectn2=newInteger(4);}}A.可以编译通过,可以运行,并得到预期结果。B.可以编译通过,可以运行,但不能得到预期结果。C.可以编译通过,但又运行错误。D.有编译错误。正确答案:D解析:Integer类是基本数据类型int的包装类,里面封装了一个int类型的值,提供了一些实用的方法(例如:在JavaFX中读取文本框内容是String类型的,如果要转换成int类型,就要调用Integer类的parseInt()方法)并实现了Comparable接口,在Comparable接口中定了抽象方法compareTo(To),T是泛型,对于Integer类,T被替换为Integer,如下图:
因此,Integer类中compareTo()方法的定义如下:因此,compareTo的参数只能是Integer类型的,所以代码中的下面语句中的n2的类型需要进行强制类型转换,由Object转为Integer: 正确写法如下:n2));类似的包装类还有Long\Float\Double\Char\Boolean等,都是将基本数据类型包装为类。3、下面哪种类型不是引用数据类型()A.数组B.charC.StringD.Object正确答案:B解析:基本数据类型只是存放数据,不提供功能(即方法)包括4类八种:布尔类型:boolean字符类型:char整数类型:byte,short,int,long
浮点类型:float,double引用数据类型包括类、接口、抽象类、数组(本质上是类),引用类型可以提供功能。注意:String是一个类,所以可以使用Strings=newString("bistu")的方式创建对象;数组也是一个类,所以需要用new创建对象。4、类Test要定义一个无参数、无返回值的方法method,并能够通过()的方式调用method方法,则method方法的定义形式为()。A.publicstaticvoidmethod()B.publicvoidmethod()C.publicfinalvoidmethod()D.publicabstractvoidmethod()正确答案:A解析:静态方法(也叫类方法)可以不创建对象,而直接通过类名调用。5、下列关于接口说法正确的是()。A.抽象类中的方法不全都是抽象的,因此可以创建对象。B.接口的引用既可以调用实现类重写的接口的方法,也可以调用实现类新增的方法。C.接口的实现类可以实现接口的部分方法。D.接口的方法都是抽象的,因此不可以创建对象。正确答案:D解析:选项A的前半句是对的,后半句错了。选项B前半句是对的,后半句不对。示例如下:publicinterfaceGeometricObject{ publicdoublegetArea();}publicclassCircleimplementsGeometricObject{ publicdoublegetArea(){.….}publicdoublegetPerimeter(){……}}publicTestCircle{ publicstaticvoidmain(String[]args){ GeometricObjectc=newCircle(); ();getPerimeter()同一包中的类访问B.其他包中的类访问C.所有的类访问D.所有的类的子类访问正确答案:A解析:注意本题可以继续扩展,例如把访问权限换成public/private/protected。7、下列哪个是Java应用程序主类中正确的main方法声明()A.publicvoidmain(String[]args)B.staticvoidmain(String[]ar)C.publicstaticvoidMain(Stringa[])D.publicstaticvoidmain(Stringargs[])正确答案:D8、有一段java应用程序,其中包含一个公共类,名字为Cat,那么保存它的源文件名是()A.B.C.CatD.都对正确答案:A与第1个选择题类似。9、下列哪个是JDK提供的编译器()A.B.C.D.正确答案:B10、某个源文件如下:publicclassTestPerson{}classPerson{}classStudentextendsPerson{}那么保存它的源文件名是()A.B.C.D.正确答案:A参考第1、8题。11、以下定义一位数组的语句中,正确的是()A.inta[5];B.inta[]=new[5];C.inta[];inta=newint[5];D.inta[]={1,2,3,4,5};正确答案:D选项A:java中的数组是类,需要使用new关键字创建。选项B:落类型了,正确写法为inta[]=newint[5];选项C:重复定义变量a,正确写法:inta[];a=newint[5];12、String类实现Comparable接口,覆盖其中的compareTo()方法。下面哪个是正确的String类中被重写的compareTo()方法的方法头A.publicintcompareTo(Stringo)B.publicvoidcompareTo(Stringo)C.publicintcompareTo(Objecto)D.publicvoidcompareTo(Objecto)正确答案:A解析:Comparable接口的定义如下:接口的实现类必须覆盖在接口中定义的抽象的方法,覆盖就意味在实现类中的方法要与在接口中定义的抽象方法同名、同参、同返回值。13、将类的某个成员方法的访问权限设置为protected的,则下面说法正确的是()。A.同一包中的其他类不可以访问该方法B.不同包中的子类可以访问该方法C.所有包中的类都可以访问该方法D.所有包中的类都不可以访问该方法。正确答案:B14、下列哪一个类声明是错误的()A.classAB.publicclassAC.protectedclassAD.publicabstractclassA正确答案:C解析:类只能被默认或者public修饰符修饰,这是与成员变量和成员方法不一样的地方。15、下面关于数组和集合的说法,哪一个是错误的()A.数组的长度一旦确定,不能修改;B.集合的长度可变,但是效率比数组低;C.数组和集合都属于引用类型;D.数组使用泛型指明所存储的对象的类型。正确答案:D解析:ArrayList是集合的一种类型。集合使用泛型指明所存储的对象的类型。16、下面代码有错误的行是:________。1:publicclassReview1307{2:publicstaticvoidmain(String[]args){3:Numberx=newInteger(3);4::Integer(4)));6:}7:}A.line2B.line3C.line4D.line5正确答案:D解析:查JDK帮助文档,Number是Integer的父类,Number没有实现Comparable接口,而子类Integer实现了Comparable接口,即子类Integer新增了compareTo()方法。x的声明类型是Number,实际类型是Integer,根据父类引用不能调用子类新增的方法的原则,x不可以直接调用compareTo()方法。如果需要修改代码中的错误,可以进行强制类型转换,如下:Integer(4)));17、inta[]={1,4,7,2,5,6,0},该数组第1个和最后1个元素的下标为哪一项()A.0,7B.1,6C.0,6D.1,7正确答案:C18、假设arr是一个int类型的二维数组,下面关于arr的声明和初始化,哪一项是错误的()A.int[][]arr={{1,2},{3,4,5}};B.int[][]arr=newint[2][3];C.int[][]arr=newint[2][];D.int[][]arr=newint[][3];正确答案:D解析:Java的二维数组是由一维数组模拟的,示例如下:没有第一维,就不会有第二维,所以,创建数组的时候,不能只指明第二维,不指明第一维。但可以仅指明第一维,不指明第二维,如选项C。19、下面说法哪一个是错误的()A.构造方法的名称与类名一样。B.构造方法返回值可以为void。C.一个类可以有多个构造方法。D.在一个类中可以使用this调用该类的其他构造方法。正确答案:B解析:构造方法的作用是创建对象,因此,本质上,构造方法是有返回值的,其返回值就是它创建的对象。但是,由于即使不指明构造方法的返回值,JDK也知道其返回值类型,因此,构造方法的返回值类型省略掉了。但是绝对不能用void,void表示没有返回值。20、下面关于接口的定义哪个是正确的A. interfaceA{ voidprint(){};}B. abstractinterfaceAextendsI1,I2{ abstractvoidprint(){};}C. abstractinterfaceA{ print();}D. interfaceA{ voidprint(); }正确答案:D解析:(1)interface前面没有abstract修饰;(2)接口中的方法都是抽象的,因此不能有方法体,即{}。21、下面关于多态的说法,正确的是()。A.一个类中不能有同名的方法;B.子类中不能有和父类中同名的方法;C.子类中可以有和父类中名字相同,且参数相同的方法;D.多态性就是方法的名字和参数可以一样,但返回值的类型必须不一样。正确答案:C22、用于定义类成员的访问控制权的一组关键字是()A.class,float,double,publicB.float,boolean,int,longC.char,extends,float,doubleD.public,private,protected正确答案:D23、下面关于接口的说法哪一条是错误的()A.接口是一种特殊的抽象类,接口的方法都是抽象方法;B.类可以实现接口;C.接口和子接口可以有自己的实例对象;D.可以使用接口声明引用,引用实现本接口或子接口的类的对象。正确答案:C解析:接口中的方法都是抽象的,不能创建实例;类似的,抽象类也不可以创建实例。24、下面关于抽象类的说法,哪一条是错误的()A.抽象类可以不包含抽象方法;B.一个类只要有一个抽象方法,就是抽象类;C.抽象类不能创建对象,创建对象的工作由抽象类的具体子类来实现;D.对于抽象类中的抽象方法来说,在抽象类中既要指定方法名和参数,又要指定实现代码。正确答案:D解析:抽象方法没有方法体,因此不可能有实现代码。25、Java源程序经过编译后得到的类文件的扩展名是哪一个项()A.javaB.exeC.classD.html正确答案:C26、Worker类是Person类的子类,Worker的构造方法中有一句super(),该语句是()。A.调用Person类中定义的super()方法B.语法错误C.调用Person类的构造方法D.调用Worker类中定义的super()方法正确答案:C27、关于覆盖和重载,下面说法哪一个是错误的()A.一个类中包含多个同名但参数不同的方法,这些方法构成了重载。B.普通的成员方法可以重载,但构造方法不可以重载。C.如果在子类中定义的方法与其父类的某个方法具有相同的名称、参数和返回值,则称子类的方法覆盖了父类的方法。D.当父类的方法不能满足子类的要求时,子类可覆盖父类的方法;当一种功能有多种实现时,可使用重载来提供多个同名不同参的方法。正确答案:B解析:构造方法也可以重载,即一个类可以有多个构造方法。28、下面的代码说明类A和类B之间是什么关系()classA{}classBextendsA{}A.关联B.继承C.依赖D.实现正确答案:B29、下面代码的错误出现在________。1:publicclassReview1308{2:publicstaticvoidmain(String[]args){3:Numberx=newInteger(3);4::Integer(4)));6:}7:}A.line2B.line3C.line4D.line5正确答案:D30、下列关于继承的概念,哪项叙述是正确的()A.在java中,允许一个类继承多个父类;B.在java中,一个类只能实现一个接口;C.在java中,一个类不能同时继承一个类和实现一个接口;D.java的单一继承使代码更可靠。正确答案:D解析:Java采用单继承,即只能有一个父类,但可以实现多个接口。程序题1、GeometricObject是几何图形抽象类,Circle类继承了GeometricObject类,同时实现了Comparable<Circle>接口,三者的UML类图如下:提示:Comparable<T>接口在包中已经定义,不需要自己写。解题要求:编写测试类,要求如下:(1)创建Circle类的对象c1和c2,设定c1的半径为5,c2的半径为6。(2)输出c1和c2的半径;c1的周长和面积;调用c1的compareTo(Circleo)方法与c2比较,输出比较结果。(3)将c1的半径改为8,按照(2)中的要求输出信息。(4)将c1的半径改为6,按照(2)中的要求输出信息。样例如下packageqiZhongKaoShi2;publicclassTestCircleComparable{ publicstaticvoidmain(String[]args){ Circlec1=newCircle(5); Circlec2=newCircle(6); "c1的半径是"+()); "c2的半径是"+()); "c1的周长是"+()); "c1的面积是"+()); if(c2)==1) "c1比c2大"); elseif(c2)==-1) "c1比c2小"); else "c1与c2相等"); c1=newCircle(8); "c1的半
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 服装店店长视觉营销策略培训
- 绿色建筑设计与施工的法规要求
- 基于大数据的食品安全风险预警系统研究报告
- 国际市场营销策略与渠道拓展研究
- 技术型企业的国际化战略研究
- 软件开发过程中的风险识别与防控策略
- 互联网企业人才需求与招聘策略
- 心理健康的重要性及治疗方法
- 智能穿戴设备技术与市场发展趋势分析
- 中国传统医药文化学习指南
- 2025年新疆人才集团办公室(党委办公室)岗位社会公开招聘4人笔试历年典型考题(历年真题考点)解题思路附带答案详解
- 香港城市大学就业分析
- 2026年时事政治测试题库(考点梳理)
- 2025年下半年中学教师资格证《教育知识与能力》真题及参考答案
- 消防设备维保月度计划表模板及范例
- 2026年辽宁医药职业学院单招职业技能考试题库及参考答案详解1套
- 北京旅游课件
- 高压电工证考试题库及答案(完整版)
- 2025年及未来5年中国吊舱式推进器市场全面调研及行业投资潜力预测报告
- 2025工业机器人密度提升及制造业转型需求与本土化战略研究
- DBT29-6-2010 天津市建设项目配建停车场(库)标准
评论
0/150
提交评论