一、填空题1.面向对象的三大特征是____封装_____、_____继承_____和______多态________。2.一个Java源程序是由若干个类组成。如果源文件中有多个类时,则只能有一个类是______公共______类,并且这个类必须与源文件名同名。3.用修饰符static说明的成员变量是_____静态变量_______4.Java中成员变量又分为实例成员变量和_____基本数据类型变量_______。5.在Java中,可以使用_________new________关键字来创建类的实例对象。6.定义在类中的变量被称为________局部变量_______,未定义在方法中变量被称为________成员变量_______。7.在Java语言中,允许使用已存在的类作为基础创建新的类,这种技术称为___继承____。8.局部变量的名字与成员变量的名字相同,若想在该方法内使用成员变量,必须使用关键字______this______。9.一个类如果实现一个接口,那么它就需要实现接口中定义的全部,否则该类就必须定义成___抽象类____。10.___final____关键字可用于修饰类、变量和方法,它有“这是无法改变的”或者“最终”的含义11.在设计一个类时,想要对成员变量的访问作出一些限定,不允许外界随意访问。这就需要实现类的____封装___。12._____构造方法______是一种特殊方法,它的名字必须与它所在的类的名字完全相同,并不返回任何数据类型。13.Java中_____类______是创建对象的模板14.类方法和实例方法的区别在于类方法不但可以由对象调用还可以直接由_______类_______调用,而实例方法却不可以。15.Java中用______private_______修饰的成员变量和方法称为私有变量和私有方法。16.Java中用_____public______修饰的成员变量和方法称为共有变量和共有方法。17.在程序开发中,要想将一个包中的类导入到当前程序中,可以使用___import____关键字。18.Collection有两个子接口分别是List和Set,List集合的特点是___有序可重复___________,Set集合的特点是________无序不可重复________。19.使用Iterator遍历集合时,首先需要调用方法______hasNext()______判断是否存在下一个元素,若存在下一个元素,则调用方法_______next()_______取出该元素。20.Java中由继承而得到的类成为______子类______,被继承的类称为父类。21.Java中一个类可以有_____1_____个直接父类。22.子类通过成员变量的隐藏和方法的_____重写_____可以把父类的状态和行为改变为自身的状态和行为。23.如果一个类的声明中没有使用extends关键字,这个类被系统默认为是_____Object______的子类。24.对于子类创建的一个对象,如果子类重写了父类的方法,则运行时系统调用_____子类_______的方法。25._____抽象_______类不能创建对象,必须产生其子类,由子类创建对象。26.如果在子类中想使用被子类隐藏的父类的成员变量或方法可以使用关键字______super______。27.使用关键字____interface_______来定义接口。28.定义接口时,接口体中只进行方法的声明,不允许提供方法的______内容________。29.一个类通过使用关键字______implements_______声明自己使用一个或多个接口。30.接口中的方法被默认的访问权限是______default______。31.______Collections______类是专门用来操作集合的工具类,提供一系列静态方法实现对各种集合的操作。32.Java语言中,_____abstract_______关键字是用来定义抽象类的。33.如果一个方法被修饰为______final______方法,则这个方法不能被重写。34.在创建TreeSet对象时,可以传入自定义的比较器,自定义比较器需要实现_____Set_____接口。35.集合按照存储结构的不同可分为单列集合和双列集合,单列集合的根接口是__Collection________,双列集合的根接口是____Map_____。36.Map集合中的元素都是成对出现的,并且都是以_____key______、_____value______的映射关系存在。37.Iterator有一个子类,不仅可以对集合进行从前向后遍历,还可以从后面向前遍历。该类是____ListIterator______。38.Java集合中,List的线性集合类是_____ArrayList_____,链式实现类是_____LinkedList______39.List集合的主要实现类有___ArrayList_____、__LinedList______,Set集合的主要实现类有____HashSet____、___TreeSet_____,Map集合的主要实现类有____HashMap____、___TreeMap_____。40.Map集合中存储元素需要调用____put()_____方法,要想根据该集合的键获取对应的值需要调用____get()____方法。41.Java.util包中提供了一个专门用来操作集合的工具类,这个类是____Collections______,还提供了一个专门用于操作数组的工具类,这个类是___Arrays_____。42.Java中使用java.lang包中的______String_____类来创建一个字符串变量,因此字符串变量是类类型变量,是一个对象。43.创建一个字符串时,使用String类的_____Sring(char[]value)______。44.使用String类的_____length()______方法可以获取一个字符串的长度。45.可以使用String类的_____startsWith()______方法判断一个字符串的前缀是否是字符串s。46.可以使用String类的____endsWith()_______方法判断一个字符串的后缀是否是字符串s。47.可以使用String类的_____equarl()_____方法比较一字符串是否与字符串s相同。48.Object类有一个public方法是_____toString()_____,一个对象通过调用该方法可以获得该对象的字符串表示。二、判断题:1.方法内部类是指在成员方法中定义的类,它只能在当前方法中被使用。(T)2.一个类中如果没有定义构造方法,那么这个类就没有构造方法。(F)3.垃圾回收器会随时将垃圾对象从内存中释放。(F)??不是随时4.封装就是隐藏对象的属性和实现细节,仅对外提供公有的方法。(T)5.Java程序中,可以使用关键字new创建新的对象。(T)6.静态方法随着类的加载而加载,随着类的消失而消失。(F)7.只有private修饰成员变量才是类的封装体现。(T)8.如果想通过外部类去访问内部类,则需要通过外部类对象去创建内部类对象。(T)9.单例设计模式,构造方法的权限修饰符是private。(T)10.this关键字可以在所有的方法中使用。(F)11.类中可以定义成员变量和成员方法,其中成员变量用于描述对象的特征,成员方法用于描述对象的行为。(T)12.在一个类中可以定义多个构造方法,只要每个构造方法的参数类型或参数个数不同即可。(T)13.静态变量可以被类和对象调用。(T)??14.Object类的构造方法第一行是super()语句(F)15.父类的引用指向自己子类的对象是多态的一种体现形式(T)16.匿名内部类其实就是一个没有类名的内部类(F)??17.Java中的每个类都至少有一个构造方法,一个类中如果没有定义构造方法,系统会自动为这个类创建一个默认的构造方法。(T)18.声明构造方法时,不能使用private关键字修饰。(F)??19.抽象方法必须定义在抽象类中,所以抽象类中的方法都是抽象方法。(F)20.Java中被final关键字修饰的变量,不能被重新赋值。(T)21.接口可以被多重implements,抽象类只能被单一extends(T)22.运行时异常是必须进行处理的异常,否则程序编译不能通过(T)23.import语句通常出现在package语句之前(F)24.抽象类中的方法只能定义成抽象的方法(F)25.方法重写时,子类抛出的异常类型大于等于父类抛出的异常类型(F)26.在实例化子类对象时,会自动调用父类无参的构造方法(T)27.类只支持单继承,不允许多重继承,C类不可以既继承A类又B类(T)28.在Java中,针对类、成员方法和属性提供了四种访问级别,分别是private、static、protected和public。(F)29.static关键字可以修饰成员变量,也可以修饰局部变量。(F)??三选择题1.在类的定义中可以有两个同名函数,这种现象称为函数(D)。(A)封装(B)继承(C)覆盖(D)重载2.在类的定义中构造函数的作用是(D)。(A)保护成员变量(B)读取类的成员变量(C)描述类的特征(D)初始化成员变量3.下面关键字中,哪一个不是用于异常处理语句(B)。(A)try(B)break(C)catch(D)finally4.类与对象的关系是(A)。(A)类是对象的抽象(B)对象是类的抽象(C)对象是类的子类(D)类是对象的具体实例5.下面哪一个是Java中不合法的标识符(D)。(A)$persons(B)twoNum(C)_myVar(D)*point6.为AB类的一个无形式参数无返回值的方法method书写方法头,使得使用类名AB作为前缀就可以调用它,该方法头的形式为(A)。(A)staticvoidmethod()(B)publicvoidmethod()(C)finalvoidmethod()(D)abstractvoidmethod()7.欲构造ArrayList类的一个实例,此类继承了List接口,下列哪个方法是正确的(B)。(A)ArrayListmyList=newObject()(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中一个类不能同时继承一个类和实现一个接口D、在Java中接口只允许单一继承11.在Java中,一个类可同时定义许多同名的方法,这些方法的形式参数的个数、类型或顺序各不相同,传回的值也可以不相同。这种面向对象程序特性称为(C)A)隐藏B)重写C)重载D)Java不支持此特性12.以下有关构造方法的说法,正确的是:(A)A.一个类的构造方法可以有多个B.构造方法在类定义时被调用C.构造方法只能由对象中的其它方法调用。D.构造方法可以和类同名,也可以和类名不同13.下列类定义中哪些是合法的抽象类的定义?(C)A、abstractAnimal{abstractvoidgrowl();}B、classabstractAnimal{abstractvoidgrowl();}C、abstractclassAnimal{abstractvoidgrowl();}D、abstractclassAnimal{abstractv