java高级编程复习题_第1页
java高级编程复习题_第2页
java高级编程复习题_第3页
java高级编程复习题_第4页
java高级编程复习题_第5页
免费预览已结束,剩余10页可下载查看

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、、填空题1 .面向对象的三大特征是封装>继承和多态2 .一个Java源程序是由假设干个类组成.如果源文件中有多个类时,那么只能有一个类是公共类,并且这个类必须与源文件名同名.3 .用修饰符static说明的成员变量是静态变量4 .Java中成员变量又分为实例成员变量和根本数据类型变量.5 .在Java中,可以使用new关键字来创立类的实例对象.6 .定义在类中的变量被称为/局部变量,未定义在方法中变量被称为成员变量.7 .在Java语言中,允许使用已存在的类作为根底创立新的类,这种技术称为继承.8 .局部变量的名字与成员变量的名字相同,假设想在该方法内使用成员变量,必须使用关键字this

2、.9 .一个类如果实现一个接口,那么它就需要实现接口中定义的全部,否那么该类就必须定义成_抽象类.10 .final关键字可用于修饰类、变量和方法,它有“这是无法改变的或者“最终的含义11 .在设计一个类时,想要对成员变量的访问作出一些限定,不允许外界随意访问.这就需要实现类的封装.12 .构造方法是一种特殊方法,它的名字必须与它所在的类的名字完全相同,并不返回任何数据类型.13 .Java中类是创立对象的模板14 .类方法和实例方法的区别在于类方法不但可以由对象调用还可以直接由类调用,而实例方法却不可以.15 .Java中用private修饰的成员变量和方法称为私有变量和私有方法.16 .J

3、ava中用public修饰的成员变量和方法称为共有变量和共有方法.17 .在程序开发中,要想将一个包中的类导入到当前程序中,可以使用import关键字.18 .Collection有两个子接口分别是List和Set,List集合的特点是打序可重复,Set集合的特点是无序不可重复.19 .使用Iterator遍历集合时,首先需要调用方法hasNext()判断是否存在下一个元素,假设存在下一个元素,那么调用方法next()取出该元素.20 .Java中由继承而得到的类成为子类被继承的类称为父类.21 .Java中一个类可以有1个直接父类.22 .子类通过成员变量的隐藏和方法的重写可以把父类的状态和

4、行为改变为自身的状态和行为.23 .如果一个类的声明中没有使用extends关键字,这个类被系统默认为是Object的子类o24 .对于子类创立的一个对象,如果子类重写了父类的方法,那么运行时系统调用子类的方法.25 .抽象类不能创立对象,必须产生其子类,由子类创立对象.26 .如果在子类中想使用被子类隐藏的父类的成员变量或方法可以使用关键字super27 .使用关键字interface来定义接口.28 .定义接口时,接口体中只进行方法的声明,不允许提供方法的内容29 .一个类通过使用关键字implements声明自己使用一个或多个接口.30 .接口中的方法被默认的访问权限是default31

5、 .Collections类是专门用来操作集合的工具类,提供一系列静态方法实现对各种集合的操作.32 .Java语言中,abstract关键字是用来定义抽象类的.33 .如果一个方法被修饰为final方法,那么这个方法不能被重写.34 .在创立TreeSet对象时,可以传入自定义的比拟器,自定义比拟器需要实现Set接口o35 .集合根据存储结构的不同可分为单列集合和双列集合,单列集合的根接口是_Collection,双列集合白根接口是Map.36 .Map集合中的元素都是成对出现的,并且都是以key、value的映射关系存在.37 .Iterator有一个子类,不仅可以对集合进行从前向后遍历,

6、还可以从后面向前遍历.该类是ListIterator.38 .Java集合中,List的线性集合类是ArrayList,链式实现类是LinkedList39 .List集合的主要实现类有ArrayList、_LinedList,Set集合的主要实现类有HashSet、TreeSet,Map集合的主要实现类有HashMap、TreeMap.40 .Map集合中存储元素需要调用put()方法,要想根据该集合的键获取对应的值需要调用get()方法.41 .Java.util包中提供了一个专门用来操作集合的工具类,这个类是Collections,还提供了一个专门用于操作数组的工具类,这个类是Array

7、s.42 .Java中使用java.lang包中的String类来创立一个字符串变量,因此字符串变量是类类型变量,是一个对象.43 .创立一个字符串时,使用String类的Sring(char口value).44 .使用String类的length()方法可以获取一个字符串的长度.45 .可以使用String类的startsWith()方法判断一个字符串的前缀是否是字符串So46 .可以使用String类的endsWith()方法判断一个字符串的后缀是否是字符串So47 .可以使用String类的equarl()方法比拟一字符串是否与字符串s相同.48 .Object类有一个public方法是

8、toString(),一个对象通过调用该方法可以获得该对象的字符串表示二、判断题:1 .方法内部类是指在成员方法中定义的类,它只能在当前方法中被使用.T2 .一个类中如果没有定义构造方法,那么这个类就没有构造方法.F3 .垃圾回收器会随时将垃圾对象从内存中释放.F?不是随时4 .封装就是隐藏对象的属性和实现细节,仅对外提供公有的方法.T5 .Java程序中,可以使用关键字new创立新的对象.T6 .静态方法随着类的加载而加载,随着类的消失而消失.F7 .只有private修饰成员变量才是类的封装表达.T8 .如果想通过外部类去访问内部类,那么需要通过外部类对象去创立内部类对象.T9 .单例设计

9、模式,构造方法的权限修饰符是privateoT10 .this关键字可以在所有的方法中使用.F11 .类中可以定义成员变量和成员方法,其中成员变量用于描述对象的特征,成员方法用于描述对象的行为.T12 .在一个类中可以定义多个构造方法,只要每个构造方法的参数类型或参数个数不同即可.T13 .静态变量可以被类和对象调用.T?14 .Object类的构造方法第一行是super浒句F15 .父类的引用指向自己子类的对象是多态的一种表达形式T16 .匿名内部类其实就是一个没有类名的内部类F?17 .Java中的每个类都至少有一个构造方法,一个类中如果没有定义构造方法,系统会自动为这个类创立一个默认的构

10、造方法.T18 .声明构造方法时,不能使用private关键字修饰.F?19 .抽象方法必须定义在抽象类中,所以抽象类中的方法都是抽象方法.F20 .Java中被final关键字修饰的变量,不能被重新赋值.T21 .接口可以被多重implements,抽象类只能被单一extendsT22 .运行时异常是必须进行处理的异常,否那么程序编译不能通过T23 .import语句通常出现在package语句之前F24 .抽象类中的方法只能定义成抽象的方法F25 .方法重写时,子类抛出的异常类型大于等于父类抛出的异常类型F26 .在实例化子类对象时,会自动调用父类无参的构造方法T27 .类只支持单继承,不

11、允许多重继承,C类不可以既继承A类又8类T28 .在Java中,针对类、成员方法和属性提供了四种访问级别,分别是private、static、protected和public.F29 .static关键字可以修饰成员变量,也可以修饰局部变量.F?三选择题1 .在类的定义中可以有两个同名函数,这种现象称为函数DA封装B继承C覆盖D重载2 .在类的定义中构造函数的作用是D.A保护成员变量B读取类的成员变量C描述类的特征D初始化成员变量3 .下面关键字中,哪一个不是用于异常处理语句BAtryCcatch4.类与对象的关系是A类是对象的抽象C对象是类的子类BbreakDfinallyA.B对象是类的抽

12、象D类是对象的具体实例5.卜面哪一个是Java中不合法的标识符D.(A) $persons(B) twoNumC_myVarD*point6 .为AB类的一个无形式参数无返回值的方法method书写方法头,使得使用类名AB作为前缀就可以调用它,该方法头的形式为A.(A) staticvoidmethod()(B) publicvoidmethod()(C) finalvoidmethod()(D) abstractvoidmethod()7 .欲构造ArrayList类的一个实例,此类继承了List接口,以下哪个方法是正确的(B).(A) ArrayListmyList=newObject()

13、(B) ListmyList=newArrayList()(C) ArrayListmyList=newList()(D) ListmyList=newList()8 .如果一个类的成员变量只能在所在类中使用,那么该成员变量必须使用的修饰是(C)(A)public(B)protected(C)private(D)static9 .关于抽象方法的说法正确的选项是(C)(A)可以有方法体(B)可以出现在非抽象类中(C)是没有方法体的方法(D)抽象类中的方法都是抽象方法10 .以下关于继承的表达正确的选项是(A).A、在Java中类只允许单一继承B、在Java中一个类只能实现一个接口C、在Java中

14、一个类不能同时继承一个类和实现一个接口D、在Java中接口只允许单一继承11 .在Java中,一个类可同时定义许多同名的方法,这些方法的形式参数的个数、类型或顺序各不相同,传回的值也可以不相同.这种面向对象程序特性称为(C)A)隐藏B)重写C)重载D)Java不支持此特性12.以下有关构造方法的说法,正确的选项是:(A)A.一个类的构造方法可以有多个B.构造方法在类定义时被调用C.构造方法只能由对象中的其它方法调用.D.构造方法可以和类同名,也可以和类名不同13 .以下类定义中哪些是合法的抽象类的定义?(C)A、abstractAnimalabstractvoidgrowl();B、class

15、abstractAnimalabstractvoidgrowl();C、abstractclassAnimalabstractvoidgrowl();D、abstractclassAnimalabstractvoid14 .设有下面两个赋值语句:?a=Integer.parseInJ“127/把字符串类型的值转化成整数型b=Integer.valueOf(“12).intValue();下述说法正确的选项是().A、a是整数类型变量,b是整数类对象.B、a是整数类对象,b是整数类型变量.C、a和b都是整数类对象并且值相等.D、a和b都是整数类型变量并且值相等.15 .关于对象成员占用内存的说法

16、哪个正确?(B)A.同一个类的对象共用同一段内存B、同一个类的对象使用不同的内存段,但静态成员共享相同的内存空间C.对象的方法不占用内存方法都是有地址的,所以方法是占用内存空间的,但函数由于是多对象共享的,所以函数不占用对象的内存地址,是放在代码段的D,以上都不对16 .关于继承的说法正确的选项是:(B)A、子类将继承父类所有的属性和方法.B、子类将继承父类的非私有属性和方法.C、子类只继承父类public方法和属性D、子类只继承父类的方法,而不继承属性17 .覆盖与重载的关系是A、覆盖只有发生在父类与子类之间,而重载可以发生在同一个类中B,覆盖方法可以不同名,而重载方法必须同名C.巾nal修

17、饰的方法可以被覆盖,但不能被重载D.覆盖与重载是同一回事18 .关于对象成员占用内存的说法哪个正确?BA.同一个类的对象共用同一段内存B、同一个类的对象使用不同的内存段,但静态成员共享相同的内存空间C.对象的方法不占用内存D,以上都不对19 .以下说法哪个正确?CA.不需要定义类,就能创立对象B.对象中必须有属性和方法C.属性可以是简单变量,也可以是一个对象D、属性必须是简单变量20 .构造函数何时被调用?AA、创立对象时B、类定义时C、使用对象的方法时D、使用对象的属性时21 .抽象方法:CA、可以有方法体B、可以出现在非抽象类中C、是没有方法体的方法D、抽象类中的方法都是抽象方法22 .关

18、于继承的说法正确的选项是:BA、子类将继承父类所有的属性和方法.B、子类将继承父类的非私有属性和方法.C、子类只继承父类public方法和属性D、子类只继承父类的方法,而不继承属性23 .关于构造函数的说法哪个正确?CA、一个类只能有一个构造函数B、一个类可以有多个不同名的构造函数C、构造函数与类同名D、构造函数必须自己定义,不能使用父类的构造函数24 .this和super:CA、都可以用在main方法中B、都是指一个内存地址C、不能用在main方法中D、意义相同25 .类的定义必须包含在以下哪种符号之间?BA.方括号B.花括号C双引号D.圆括号26 .下面哪个是正确的类的声明?DA.pub

19、licvoidHHB.publicclassMoveC.publicclassvoidnumberD.publicclassCar.27 .在以下什么情况下,构造方法会被调用?BA.类定义时B.创立对象时C.调用对象方法时D.使用对象的变量时28 .下面对于构造方法的描述,正确的有哪些?,多项选择ABCA.方法名必须和类名相同B.方法名的前面没有返回值类型的声明C.在方法中不能使用return语句返回一个值D.当定义了带参数的构造方法,系统默认的不带参数的构造方法依然存在29 .类中的一个成员方法被下面哪个修饰符修饰时,该方法只能在本类被访问?CA.publicB.protectedC.pri

20、vateD.default30 .关于抽象类的说法哪些是正确的?多项选择ABCA.抽象类中可以有非抽象方法B.如果父类是抽象类,那么子类必须重写父类所有的抽象方法C.不能用抽象类去创立对象D.接口和抽象类是同一个概念31 .在Java中,要想让一个类继承另一个类,可以使用以下哪个关键字?CA.inheritsB.implementsC.extendsD.modifies32 .在Java中,要想让一个类继承接口,可以使用以下哪个关键字?BA.inheritsB.implementsC.extendsD.modifies33 .以下说法正确的选项是DA. 一个类可以有多个直接基类.B.父类的对象

21、可以作为子类对象使用C.所有的方法都可以进行覆盖D.Object类是所有类的基类.34 .以下哪些说法是正确的?多项选择ABA.LinkedList集合在增删元素时效率较高B.ArrayList集合在查询元素时效率较高C.HashMap不允许出现一对null键null值?可以D.HashSet集合中元素可重复并且无序35 .关于super的说法正确的选项是:BA、是指当前对象的内存地址B、是指当前对象的父类对象的内存地址C、是指当前对象的父类D、可以用在main()方法中36 .覆盖与重载的关系是A、覆盖只有发生在父类与子类之间,而重载可以发生在同一个类中B,覆盖方法可以不同名,而重载方法必须

22、同名C.巾nal修饰的方法可以被覆盖,但不能被重载D.覆盖与重载是同一回事37 .关于接口哪个正确?(A)A、实现一个接口必须实现接口的所有方法B. 一个类只能实现一个接口C.接口间不能有继承关系D.接口和抽象类是同一回事38 .Java语言中,集合类都位于哪个包中?(A)A.java.utilB.java.langC.java.arrayD.java.collections39 .使用Iterator时,判断是否存在下一个元素可以使用以下哪个方法?(D)A.next()B.hash()C.hasPrevious()D.hasNext()40 .在JAVA中,Object类是所有类的父亲,用户

23、自定义类默认扩展自Object类,以下选项中的(D)方法不属于Object类的方法.A、 equals(Objectobj)B、 getClass()C、 toString()D、 trim()三、简做题:1 .什么是方法重载?在一个类中可以存在多个同名的方法且方法的参数类型个数都不一样的现象2 .构造方法和普通的成员方法有什么区别?构造方法没有方法的返回类型构造方法不可以用return返回一个值构造方法与所在类同名3 .什么是方法重写?子类覆盖父类的方法修改和增删内容成自己的方法4 .什么是多态?因子类对象参数类型的不同导致最终执行结构各异的现象抽象类和接口的区别?抽象类里可以有抽象方法也可

24、以没有还可以两个都有,可以有常量也可以有变量;接口里必须是常量和抽象方法.5 .什么是集合,请列举集合中常用的类和接口?集合是储存对象的容器,接口:Set,List,Map类:ArrayListlinkedListhashSettreeSethashmaptreemap6 .集合中的List、Set、Map有什么区别?List和Set都是单列集合,Map是双列集合;List有序,可重复;Set无序,不能重复.7 .什么是向上转型把子类类型转化成父类8 .请说出作用域public,private,protected,以及不写时的区别public作用域:全局范围,private作用域:同一类中,p

25、rotect作用域:子类中,不写时的作用域:同一包中.9 .面向对象的特征有哪些方面封装,继承,多态四、编程题1 .定义一个点类Point,包含2个成员变量x、y分别表示x和y坐标,2个构造器Point()和Point(intx0,y0),以及一个movePoint(intdx,intdy)方法实现点的位置移动,创立两个Point对象p1、p2,分别调用movePoint方法后,打印p1和p2的坐标.2 .定义一个矩形类Rectangle:(知识点:对象的创立和使用)定义三个方法:getArea()求面积、getPer(冰周长,showAll()分别在限制台输出长、宽、面积、周长.有2个属性:

26、长length、宽width.通过构造方法Rectangle(intwidth,intlength),分别给两个属性赋值.创立一个Rectangle对象,并输出相关信息3 .设计一个Shape接口和它的两个实现类Square和Circle,要求如下:Shape接口中有一个抽象方法area(),用于求该形状的面积,方法接收一个double类型的参数,返回一个double类型的结果.Square和Cirele中实现了Shape接口的area()抽象方法,分别求正方形和圆形的面积并返回结果.在测试类中创立Square和Circle对象,计算边长为2的正方形面积和半径为3的圆形面积.4 .使用Arra

27、yList集合,对其添加10个不同的元素,并使用Iterator遍历该集合.提示: 使用add()方法将元素添加到ArrayList集合中. 调用集合的Iterator.方法获得Iterator对象,并调用Iterator的hasNext()和next()方法,迭代出集合中的所有元素.5 .请根据以下要求设计一个学生类Student,并进行测试.要求如下:Student类中包含姓名、成绩两个属性.分别给这两个属性定义两个方法,一个方法用于设置值,另一个方法用于获取值.Student类中定义一个无参的构造方法和一个接收两个参数的构造方法,两个参数分别为姓名和成绩属性赋值.在测试类中创立两个Student对象,一个使用无参的构造方法,然后调用方法给姓名和成绩赋值,另一个使用有参的构造方法,在构造方法中给姓名和成绩赋值.6 .定义一个Father和Child类,并进行测试.要求如下:Father类为外部类,类中定义一个私有的String类型的属性name,name的值为“zhangjun.Child类为Father类的内部类,其中定义一个introFather()方法,方法中调用Father类的name属性.定义一个测试类Test,在Test类的main方法中,创立Child对象,并调用introFather方法.7 .设计一个名为Fan的类来表示一个风扇.这

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论