您好,欢迎访问三七文档
Java期末复习总结一、填空题:注意:答案红色已标出1、Java程序的运行环境简称之为__jre________。2、编译Java程序需要使用___javac______命令。3、Javac.exe和java.exe两个可执行程序存放在JDK安装目录的___bin_______目录下。4、Java中的注释可分为三种类型,分别是__单行注释_______、___多行注释_____、__文档注释_______。5、Java中的变量可分为两种数据类型,分别是__基本数据类型______、___引用数据类型_____。6、若X=2,则表达式(X++)/3的值是____0______。7、若inta=2;a+=3;执行后,变量a的值为___5______。8、若int[]a={12,45,34,46,23},则a[2]=____34_____。9、面向对象的三大特征是___封装______、___继承_____、____多态_____。10、定义在类中的变量被称为____成员变量_______,定义在方法中的变量被称为___局部变量_____。11、在非静态成员方法中,可以使用关键字____this_____访问类的其它非静态成员。12、在Java中,提供了一个____javadoc_____命令,用于将程序中的文档注释提取出来,生成HTML格式的文档。13、一个类如实现一个接口,那么它就需要实现接口中定义的全部___方法______,否则该类就必须定义成_____抽象类_______。14、JDK中定义了大量的异常类,这些类都是____Exception____类的子类或者间接子类。15、定义一个Java类时,如果前面使用___final____关键字修饰,那么该类不可以被继承。16、如果子类想继承父类中的成员,可以通过关键字____super_____引用父类的成员。17、异常的捕获通常由try、catch两部分组成,___try______代码块用来存放可能发生的异常,____catch_____代码块用来处理产生的异常。18、一个应用程序中有多条并发执行的线索,每条线索都被称作一个___线程_____,它们会交替执行,彼此间可以进行___通信______。19、在Java语言中,同步方法需要用到关键字___synchronized______,对于同步方法而言无须指定同步锁,它的同步锁是方法所在的___对象______,也就是___this______(关键字)。20、在thread类中,提供了一个start()方法,该方法用于__开启一个新线程____,当新线程启动后,系统会自动调用___run()___方法。21、要将某个线程设置为后台线程,需要调用该线程的____setDaemon(true)______方法,该方法须在____start()_____方法之前调用。22、在Java中定义了两个类类封装对字符串的操作,它们分别是___String_____和___StringBuffer____。23、Math类中用于计算所传递参数平方根的方法是____sqrt()______。24、Java中专门用于将日期格式化为字符串的类是___DateFormat_____。25、System类中所提供的属性和方法都是___静态____的,想要引用这些属性和方法,直接使用system类调用即可。26、Collection有两个子接口分别是list和set,list集合的特点是_____有序、可重复_____,set集合的特点是___无序、不可重复____。27、使用iterator遍历集合时,首先需要调用___hashNext()___方法判断是否存在下一个元素,若存在下一个元素,则调用___next()___方法取出该元素。28、Interator有一个子类,不仅可以对集合进行从前向后遍历,还可以从后向前遍历,该类是____ListIterator______。29、Java中的IO流,按照传输数据不同,可分为___字节流___和__字符流__。30、InputStreamReader类是用于将__字节流__转换为__字符流__。二、选择题:注意:答案红色已标出1、以下选项中,哪些属于JDK工具?(多选)()A、Java编译器B、Java运行工具C、Java文档生成工具D、Java打包工具2、下面哪种类型的文件可以在Java虚拟机中运行?()A、.javaB、.jreC、.exeD、.class3、以下关于变量的说法错误的是?()A、方法名必须是一个有效的标识符B、变量在定义时可以没有初始值C、变量一旦被定义,在程序中的任何位置都可以被访问D、在程序中,可将一个byte类型的值赋给一个int类型的变量,不需要特殊声明4、以下选项中,switch语句判断条件可以接收的数据类型有哪些?(多选)()A、intB、byteC、charD、short5、请先阅读下面的代码。intx=1;inty=2;if(x%2==0){y++;}else{y--;}System.out.println(“y=”+y);上面一段程序运行结束时,变量y的值为下列哪一项?()A、1B、2C、3D、switch语句6、在以下什么情况下,构造方法会被调用?()A、类定义时B、创建对象时C、调用对象方法时D、使用对象的变量时7、下面对于构造方法的描述,正确的有哪些?(多选)()A、方法名必须和类名相同B、方法名的前面没有返回值类型的声明C、在方法中不能使用return语句返回一个值D、当定义了带参数的构造方法,系统默认的不带参数的构造方法依然存在8、关于内部类,下面说法正确的是?(多选)()A、成员内部类是外部类的一个成员,可以访问外部类的其它成员B、外部类可以访问成员内部类的成员C、方法内部类只能在其定义的当前方法中进行实例化D、静态内部类中可以定义静态成员,也可以定义非静态成员9、下面对于单例设计模式的描述,正确的是?(多选)()A、类中定义一个无参的构造方法,并且声明为私有B、在内部创建一个该类的实例对象,使用静态变量引用该实例对象C、使用private修饰静态变量,禁止外界直接访问D、定义静态方法返回该类实例10、Outer类中定义了一个成员内部类Inner,需要在main()方法中创建Inner类实例对象,以下四种方式哪一种是正确的?()A、Innerin=newInner()B、Innerin=newOuter.Inner();C、Outer.Innerin=newOuter.Inner();D、Outer.Innerin=newOuter().newInner();11、在类的继承关系中,需要遵循以下哪个继承原则?()A、多重B、单一C、双重D、不能继承12、以下说法哪些是正确对的?(多选)()A、Java语言中允许一个类实现多个接口B、Java语言中不允许一个类继承多个类C、Java语言中允许一个类同时继承一个类并实现一个接口D、Java语言中允许一个接口继承一个接口13、关于抽象类的说法哪些是正确的?(多选)()A、抽象类中可以有非抽象方法B、如果父类是抽象类,则子类必须重写父类所有的抽样方法C、不能用抽象类去创建对象D、接口和抽象类是同一个概念14、编译运行下面的程序,结果是什么?()PubicclassA{pubicstaticvoidmain(String[]args){Bb=newB();b.test();}voidtest(){Ststem.out.print(“A”);}}classBextendsA{voidtest();Super.test();System.out.print(“B”);}}A、产生编译错误B、译运行,并输出结果ABC、代码可以编译运行,但没有输出D、编译没有错误,但会产生运行时异常15、Thread类似于下列哪个包中?()A、java.ioB、java.langC、java.utilD、java,awt16、关于线程的创建过程,下面四种说法正确的有哪些?(多选)()A、定义Thread类的子类,重写Thread类的run()方法,创建该子类的实例对象,调用对象的start()方法B、定义Thread类的子类,重写Thread类的run()方法,创建该子类的实例对象,调用对象的run()方法C、定义一个实现Runnable接口的类并实现run()方法,创建该类实例对象,将其作为参数传递给Thread类的构造方法类创建Thread对象,调用Thread对象的start()方法D、定义一个实现Runnable接口的类并实现run()方法,创建该类实例对象,然后调用run()方法17、对于线程的生命周期,下面四种说法正确的有哪些?(多选)()A、调用了线程的start()方法,该线程就进入运行状态B、线程的run()方法运行结束或未被捕获的InterruptedException等异常终结,那么该线程进入死亡状态C、线程进入死亡状态,但是该线程对象任然是一个Thread对象,在没有被垃圾回收器回收之前仍可以和引用其他对象一样应用它D、线程进入死亡状态后,调用它的start()方法仍然可以重新启动18、对于死锁的描述,下面四种说法正确的有哪些?(多选)()A、当两个线程相互等待对方释放同步锁时会发生死锁B、Java虚拟机没有检测和处理死锁的措施C、一旦出现死锁,程序会发生异常D、处于死锁状态的线程处于阻塞状态,无法继续运行19、下列四个选项中,哪些是线程进入阻塞状态的原因?(多选)()A、线程试图获取某个对象的同步锁,而该锁被其他线程所持有B、线程调用了另一个线程的join()方法C、线程调用了一个阻塞式的IO方法D、线程调用了setDaemon(Booleanb)方法20、先阅读下面的程序片段:Stringstr=”abccdefcdh”;String[]arr=str.split(“c”);System.out.println(arr.length);程序执行后打印的结果是几?()A、2B、3C、4D、521、假如indexOf()方法未能找到所指定的子字符串,则返回以下哪个?()A、falseB、deC、dD、以上答案均不对22、要产生[20,999]之间的随机整数可以使用以下哪个表达式?()A、(int)(20+Math.random()*97)B、20+(int)(Math.random()*980)C、(int)(Math.random()*999D、20+(int)(Math.random()*98023、阅读下面的程序:PubicclassTest{Pubicstaticvoidmain(Stringargs[]){Inti;Floatf=2.3f;Doubled=2.7;I=((int)Math.ceil(f))*((int)Math.round(d));Ststem.out.println(“i”);}}程序执行后,运行结果为以下哪几个选项?()A、9B、5C、6D、6.124、要想保存具有映射关系的数据,可以使用以下哪些集合?(多选)()A、ArrayListB、TreeMapC、HashMapD、TreeSet25、关于foreach循环的特点,以下说法哪些是正确的?(多选)()A、foreach循环是在遍历集合时,无须获得容器的长度B、foreach循环是在遍历集合时,无须循环条件,也无需迭代语句C、foreach循环是在遍历集合时,非常烦琐D、foreach循环的语法格式为:for(容器中元素类型临时变量:容器变量)26、要想集合中保存的元素没有重复并且按照一定的顺序排列,可使用以下哪个集合?A、LinkedListB、ArrayListC、HashSetD、TreeSet27、获取单列集合中元素的个数可以使用以下哪个方法?()A、length()B、size()C、get(intindex)sD、add(Objectobj)28、下列选项中,哪些是标准输入输出流?(多选)()A
本文标题:复习题
链接地址:https://www.777doc.com/doc-5115915 .html