




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、WOR格式 Java技术课程2019年秋季期末考试复习题Java技术课程2019年春季期末考试复习题、考试重点(占期末考试成绩一、单项选择题1. 计算机硬件能直接执行的只能是(A. 符号语言程序B.机器语言程序2. Java语言属于(C)。60%B)。C.汇编语言程序 D.高级语言程序专业资料整理A. 面向过程的解释型语言B.面向过程的编译型语言C.面向对象的解释型语言D.面向对象的编译型语言A)3. 根据TIOBE编程语言社区排行榜的统计,使用率居于前三的编程语言是(A. Java、C C+B.Java、C# C+C.Java、Python、RubyD.Objective-C 、C+、Jav
2、a4. 下述Java平台中,最适于开发嵌入式系统应用程序的是(C)。A. JavaSEB.J avaEEC.JavaMED.JavaApplet5. 下面关于Java类文件的说法错误的是(D)。A. Java编译器会为源程序中的每个类单独生成一个类文件B. Java类文件中存储的代码必须符合JVM规范C. Java类文件中存储的代码是二进制形式的代码D. Java类文件必须用Java语言编写得到6. 下列关于Eclipse 说法错误的是(A)。A. 使用Eclipse开发Java程序时,程序员编辑源程序后即可运行该程序,因此无编译程序的过程B. Eclipse 中的Workspace用于存储工
3、程的路径C. 在Windows系统下,Eclipse程序包解压缩后即可直接使用,无需安装D. Eclipse 是一个基于Java的、可扩展的、开放源代码的开发平台7. 下列关于IDE开发环境Eclipse的说法错误的是(D)。A. Eclipse 可以通过插件(plugin )的方式扩展其功能B. Eclipse 联盟是由IBM公司捐资组建的C. Eclipse使用了 SWTS形界面技术D. Eclipse的运行不需要有JRE的支持8. 关于Eclipse的视景说法错误的是(C)。A. 每个视景都定义了工作台中各个视图的初始设置和布局B. 一个工作台窗口包含多个独立的视景,但同一时刻只有一个视
4、景是对用户可见的C. 视景的布局是可以改变的,但改变多次后无法再恢复到初始设置D. 每个视景都有自己的视图和编辑器,用户可以在各个视景间切换9. 在Java中,由Java编译器自动导入,而无需在程序中用import导入的包是(A)。A.java.langB. java.awtC.java.ioD.java.applet10. 在Java中,用package语句声明一个包时,该包的层次结构必须是(B)。A. 与文件的结构相同B.与文件目录的层次相同C.与文件类型相同 D.与文件大小相同11.下面不是包的用途的是(A)A. 规定一组类的对外界面B.方便类的查找和使用C.防止命名冲突D.访问控制12
5、. Java中用于描述对象的状态的语法成分是(B)。A.修饰符B.变量C.方法D.语句13. Java中用于描述对象的行为的语法成分是(C)。A.常量B.变量C.方法D.语句14. 应用程序的main方法中有以下语句:Strings 1=newString("abc");1/5Java技术课程2019年秋季期末考试复习题Strings2=newString("abc");booleanb1=s1.equals(s2); booleanb2=(s1=s2);System.out.print(b1+" "+b2); 则输出的结果是(A)。
6、A.truefalseB.falsetrue15.应用程序的 main方法中有以下语句: 确的是(C)。C.truetrueD.falsefalseStrings="12" s=s+34; System.out.println(s);则下述说法正A. 程序有错误,不能通过编译B. 程序没有错误,运行输出结果为:46C. 程序没有错误,运行输出结果为:1234D. 程序没有错误,运行输出结果为:1216.设有如下类定义classFruit水果类 intgrams;/totalCalories()卡路里(热量)克数(质量) Fruit(intgrams)this.grams=g
7、rams;intreturngrams*10; 则创建一个Fruit类的对象实体的语句是(D)A.Fruitf;B.Fruit(30);C.newFruit();17.设有如下程序段classTestprivateintm;publicstaticvoidfun()/somecodeD.newFruit(30);要使成员?变量m能够被方法fun()直接访问,A. 将 privateintmB. 将 privateintmC. 将 privateintmD. 将 privateintm18.设有如下类定义classBextendsA据域 i,j,k,m则下面选项正确的是(改成 protected
8、intm改成 publicintm改成 staticintm 改成intm classAprivateinti;privateintk;protectedintm;C)protectedintj;则下面叙述最为准确的是(A)。A.类B的对象包含数B. 类B的对象包含数据域j,k,mC. 类B的对象包含数据域k,mD. 类B的对象包含数据域m19.下述关于重载和覆盖的叙述正确的是(A)A. 子类方法覆盖父类方法时,子类方法不能比父类方法更“私有”B. 静态方法不能被重载 C.私有方法不能被重载D. 重载方法不能抛出父类中的不可检测异常20.下述关于构造方法的叙述正确的是(B)。A.构造方法不能被
9、重载B.构造方法不能被覆盖C.构造方法可以返回一个基本数据类型的数据或者一个对象的引用D.构造方法的代码在执行时,先执行子类中的代码,然后再向上执行它祖先中的代码21.下面叙述正确的是(C)o”是正确的,当且仅A.语句“ XextendsY当X是一个类,丫是一个接口”是正确的,当且仅B.语句“ XextendsY当X是一个接口, 丫是一个类”是正确的,当且仅C.语句“ XextendsY当X和丫都是类,或都是接口D.语句“ XextendsY”是正确的,对于X和丫是类和接口的任意组合22.以下接口定义正确的是(D)。A. interfaceBvoidprint();为已定义接口abstract
10、voidprint();B. abstractinterfaceBvoidprint();C. abstractinterfaceBextendsA1,A2/A1,A2D. interfaceBvoidprint();23.给定下面程序段 publicclassNavelprivateintsize=7;privatestaticintlength=3;2/5Java技术课程2019年秋季期末考试复习题publicstaticvoidmain(Stringargs)/TODOAuto- generatedmethodstubnewNavel().go();voidgo()intsize=5;S
11、ystem.out.println(newGazer().adder();classGazer intadder()returnsize*length;下面选项正确的是(B)。A.输出15B.输出21C.抛出一个运行时异常24.给定下面程序段D.编译错误publicclassTestpublicstaticvoidaMethod()throwsException trythrownewException();finallySystem.out.println("finally");publicstaticvoidmain(Stringargs) try aMethod();
12、 catch(Exceptione)System.out.println("exception");System.out.println("finished");F面选项正确的是(C)A. 通过编译,程序运行结果是B. 通过编译,程序运行结果是C. 通过编译,程序运行结果是D. 编译错误,不能通过编译25.下面关于异常的陈述正确的是finally exception finished finallyexceptionfinishedA)A. 语句“ catch(Xx) ”能够捕获类X及其子类对象的异常B. Error类是一个运行时异常C. 任何可能抛出一
13、个 Error类对象的语句必须被封装到一个try语句块中D. 任何可能抛出一个 Exception类对象的语句必须被封装到一个try语句块中26. 下面能够创建一个 DataOutputStream对象的语句是(D)。A. NewDataOutputStreamCout.txt");B. NewDataOutputStream(newFile("out.txt");C. NewDataOutputStream(newFileWriter("out.txt");D. NewDataOutputStream(newFileOutputStream(
14、"out.txt");27. 设在Windows系统上有文件d:temp.txt,下述不能创建一个 File类实例的语句是A)A.newFile("d:temp.txt");C.newFile("d:/temp.txt");28. 下面可以从一个输入流中读取一行内容的方法是(A.next()B.nextLine() C.nextInt()29. 给定下面程序段publicclassTry6implementsRunnablepublicstaticvoidmain(Stringargs)Threadt=newThread(this);
15、t.start();publicvoidrun()System.out.println("test");下面选项正确的是(A)。A.程序不能编译通过,因为静态方法中不能使用B.newFile("d:temp.txt");D.newFile("d:/temp.txt");B)。D.nextDouble()this引用run()方法B. 程序能够通过编译,但是运行的时候没有任何输出,因为没有调用3/530. 当你使用语句 Thread=newThread(object) A.object 是Thread类的实例C.object 是Appl
16、et类的实例31. 事件监听接口中的方法的返回值是(A.intB.StringC.void32. 下面关于布局管理的叙述正确的是(A.ItemEventB.WindowEvent35.用来处理监听器的组件是(B)A.事件源对象B.监听器对象C.MouseMotionEventC.适配器对象D.代理器对象D.ComponentEventD.J DBC驱动程序必须由ORACLE公司开发37.JDBC 接口Statement中定义的execute。方法的返回类型是(C)。A.ResultSetB.intC.boolean38.JDBC 接口Statement中定义的executeQuery()方法的
17、返回类型是(A)A.ResultSetB.intC.boolean39.JDBC 接口Statement中定义的executeUpdate()方法的返回类型是(B)A.ResultSetB.intC.boolean.受影响的记录数量36.下面关于JDBC的陈述错误的是(D)。A.JDBC 本身是个商标名B.JDBC由一组用Java类和接口组成的C.JDBC可以使程序员能够用纯 JavaAPI来编写数据库应用程序D.受影响的记录数量D.受影响的记录数量 Java技术课程2019年秋季期末考试复习题C. 程序能够编译和运行,并且在控制台窗口显示字符串testD. 上述都不对D)。创建线程对象时,o
18、bject必须满足的条件是(B. object 是JFrame 类的实例D. object 是 Runnable 接口的实例C)。D. ObjectD)。A. 顺序布局能够用于放置水平大小随容器大小变化而变化的组件B. 网格布局能够用于放置大小为常数定值的组件C. 边界布局能够用于放置大小为常数定值的组件D. 网格包布局能够提供网格布局类似的布局,并且允许个别的行和列具有自己特定的大小33. 当ActionEvent事件发生时,能够取得事件源对象的方法是(B)。A. publicClassgetClass()B.publicObjectgetSource()C. publicComponent
19、getSource()D.publicComponentgetTarget()34. 用鼠标单击JFrame窗口右上角的关闭按钮,发生的事件是(B)40.获取 ResutlSet对象rst的第一行数据,以下正确的是(C.rst.first()C)oA.rst.hashNext();B.rst.next();JD.rst.nextRow();第一部分:多项选择题题 属于Java运行时环境的组成部件的是1. (CD)A.Java编程语言C. JavaAPI题下面哪些关键字能用来控制对类成员的访问2. (A.publicC. private题3. 类B是一个抽象类,类 C是类B的非抽象子类,A.Bx
20、 仁n ewB();B. Java类文件D. Java虚拟机ABC ?B. protectedD. default) F列创建对象x1的语句中正确的是(BC 。B. Bx1=newC();C. Cx1=newC();D.Cx1=newB();题4. 下面关于Java中异常处理try块的说法正确的是(AC)。A.try块后通常应有一个catch块,用来处理try块中抛出的异常4/5Java技术课程2019年秋季期末考试复习题B. catch 块后必须有finally 块C. 可能抛出异常的方法调用应放在try块中D. 对抛出的异常的处理必须放在try块中题5.关于BufferedReader类的
21、readLine() 方法,以下说法正确的有( ACD )。A. 方法readLine()每次读取一行数据B. 方法readLine() 每次读取一个字节C. 该方法可能抛出lOException异常,调用该方法时通常应将它放到try 块中,并通过catch块处理异常D. 如果读到流的末尾,该方法返回的结果为null填空题1. 程序设计语言按思维模式可以分为面向过程的语言 和面向对象的语言 两类。2. Java 的三个版本是 JavaSE、JavaEE 和 JavaME、Java应用程序编程接3. 完整的Java体系结构包括四个组件,分别是 Java编程语言 一、Java类文件格式 一口 和J
22、ava虚拟机。4. Java运行时环境是由_Java虚拟机_和_核心类组合形成的。5. 在Java类文件中存储的二进制代码称为_字节码厂,它们是JVM的指令。语言编写的程6. 在主机操作系统上由软件实现的Java虚拟机实际上是用本地(如C/C+等)序。7. Java虚拟机主要包括两个模块,一个是类装载器,另一个是执行引擎。8. JDK提供了开发Java程序所需的各种工具(诸如 Java编译器、Java虚拟机等程序)和资源,同时也提供了运行Java程序的Java运行时环境。9. 环境变量相当于给系统或用户应用程序设置的一些参数,具体起什么作用和具体程序相关。10. 开发一个完整的Java应用程序
23、系统,为了便于管理,可能需要将一系列的程序文件、资源文件和其它相关文件放到一个Java项目中。11. Eclipse根据任务的不同把视图和编辑器预先划分为不同的类别,预设好视图的排列方式,并把每一个类别称为一个视景(或透视图)。12. 为管理和使用大量的类和接口,Java把一组类和接口封装在一个包内。13. 对象是程序的基本组成实体,类是创建对象的模版 。14. Java源程序中的类可以分为两种,分别是系统类和用户自己定义类。编译程序的时候会自动导入到程序中的系统包/是java.lang 。16. 把基本数据类型包装成类的好处是可以提供基本数据类型的信息,还可以使用类的方法对数据进行操作17.
24、 在 Java 中,int 类型的包装类是 Integer ,char 类型的包装类是 Character。方法的功能是把一个字符串转换为一个整型数18. Integer 类的 parseInt() 据。19. Java把数据输出到控制台是使用标准输出流或System.out完成的。Scanner类是在20. java.util包中定义的。21. 仓【J建一个连接至U标准输入流对象System.in 的Scanner对象的语句是 ScannScanner(System.in); 。类的实例,则语句”的作用是读取一个整数,然后把这个整22. 设 myS是一个 Scanner“intx=myS.n
25、extlnt();数赋给变量x。System.out.pri nt23. Java提供的专门用于格式化输出数据的方法是f()提供的用于处理日期和时间信息的系统类24. Java 是java.util.Date 。25. 字符串常量是用双引号括起来的字符序列String 类和StringBuffer5/526. Java用于处理处理字符串的类有两个,分别是Java技术课程2019年秋季期末考试 复习题27. Java的编译器会为每个字符串常量生成一个String -类的实例。取得字符串的长度的方法是调用字符串对象28. 的length。方法。29. 在Java中,每当创建一个对象时,系统都会从它
26、管理的内存中分配一定的空间给这个对象。我们把创建好的对象叫做对象实体,而这个对象实体的“标识”叫做对象的引用。30. 构造方法有两个作用,一个作用是提供要实例化的类的类名,另一个作用是把新创建的对象初始化31. new关键字用于创建对象,new关键字被执行之后会返回新创建对象的引用32.在声明成员变量的时候,修饰的变量是类变量,类变量也称用关键字static为静态变量。 / . '7在声明成员变量的时候,没有被关键stati33.字c修饰的变量是实例变量。修饰的方法是类方法,棲万法也称34.在声明成员方法的时候,用关键字static为静态方法。在声明成员方法的时候,没有被关键stati
27、35.字c修饰的方法是实例方法。碉万法,另一种是通对象36.调用类方法有两种情况,种是通过类名过:名调用类方法37. 在面向对象的程序中,方法是用于定义对象的某个特定功能 的代码段38. 方法名和方法的参数类型称为方法的签名。 39. 调用方法的语句格式是reference.method(arguments)。一编译源程序时,编译器会为方法添加一个隐式参数,用来存储运行时刻传40. 来的对象的引用 。面向对象技术有三个基本特性,分别41. 是封装 、继承 和多态 。包含在对象属性中的数据值的集合通常称为对42. 象的状态 。对象除了保存数据之外,还提供若干操作数据的方法,用以描述的对象的43.
28、 行为。封装有两方面的意思:一44. 了功能的内容实现机制,另一个方面是对象封装了它持有的数据O45. 在Java中,通过在类定义里面定义属性和方法,强制实现对数据和功能的封装46. Java程序中的所有类都由系统类Object直接继承或间接继承得到的。47. Java中的多态是指一个程序中同名的不同方法共存的情况。48. Java中的多态分为编译时多态和运行时多态两类。49. 使用接口实际上要做两件事:第一是声明接口(定义接口),第二是在类中实现接 。回调是一种常见的程序设计模式,这种模式50. 在Java中通常是用接口来实现。51. 所谓异常,就是程序的运行时错误-“异常”产生时,意味着在
29、当前环境下无法获得必要的信息来解决问 我们所能做的就是从当前环境中跳52. 题,出,并且把问题提交给上一级别的环境。53. 我们把生成异常对象并把它交给运行时系统的异常处理机制的过程称为抛出异常。54. 运行时系统的异常处理机制在方法的调用栈中查找,从生成异常的方法开始回溯,直到找到包含相应异常处 理的方法为止,这个过程称为捕获异常。不能通过编译。,另一种是通过执throw语句由程序行显55. 编译器要求我们编写的程序必须对可检测的异常进行处理,否则 异常通常由以下两种情况引起,一种56. 是程序执行了不合法的动作式抛出。按照数据57. 为输入流和输出流两类58. 按照数据的格式,流可以分为字
30、节流和字符流两类。_系统类_/输出59. Fileinputstream和FileOutputStream用于以字节方式处理文件的输入和输出,称为文件输入流。和用于以字符方式处理文件的输入和输出,称为文件读写61.系统类 BufferedReader60. 系统类 FileReaderFileWriter器。和BufferedWriter分别称为缓冲读取器和缓冲写入器使用缓冲流的好处是可以减少系统和外部设备交换数据的62. 次数系统类称为数据输入/输出流,它们在输入输出数63. Datal叩utStream和 DataOutputStream据的同时能对流中的数据进行变换处理。提供操作系统目录
31、管理功能的文件类64. 是File 。65. 用于文件的随机读写操作的文件类是RandomAccessFile6/56.Java技术课程2019年秋季期末考试复习题通俗地讲,线程就是一个代码执行流。Java程序是从一个众所周知的入口点开始执行的,即是从main()方法的第一条语句开始执行的。当Java程序启动时,系统就为它创建好一个线程,用这个线程执行main()方法中的代码序列。这个系统创建好的线程叫主线程。JV
32、M创建的线程称为系统线程Y们自己在程序中用代码创建的线程称为用户线程。,它的对象就是一个线JavaAPI提供创建线程的系统类是Thread程。currentThread(线程类的获取当前线程对象引用) ,获取当前线程名字的方法是getName()。在Java中,线程被表示为 Javaang.Thread类的一个实例。一个线程要完成一个应用任务,为了完成该应用任务而编写的代码要放到run ()方法中。创建好线程对象之后并不意味着这个线程就会被处理机(JMV运行,还需要调用线程对象的start()方法启动线程。我们称实现了 Runnable接口的类为线程化的类,称实现了该接口的类的实例为可运行的对
33、象。从实现了 Runnable接口的对象创建线程对象的方法是,建立一个单独的Thread对象,并把可运行对象传递给专门的Thread类 一方法。线程生命周期共有五个状态,分别是新建、就绪状态、运行状态、阻塞状态、死亡状状态态。Java的线程调度策略采用抢占式调度。使用Swing编写程序的图形界面要引入两个程序包,其中包含Swing的基本类的程序包是java.swing ,包含与处理事件相关的接口和类的程序包是java.awt.event 。使用布局管理器要引入 java.awt包。事件监听者必须实现与事件类型相对应的事件监听接口,它才具有处理那类事件的能力。Java有三种窗口,分别是Apple
34、t 窗口、框架窗口( JFrame) 和无边框的窗口( JWindow)。窗口,取 设mw是一个JFrame 得mw的内容面板的语句是 mw.getContentPane()。e.getActionCommand( 要获取事件e的命令字符串,从而知道是哪一个组件激发的事件,则应该使用的代码是)面板有两种,分别是普通面板(JPanel)和滚动面(JScrollPane)。布局管理器是实现了LayoutManager接口的类。小应用程序和面板默认的布局 是FlowLayout 。JWindow、JFrame 和 JDialog 默认的布局管理器是BorderLayout 。空布局就是把一个容器的布
35、局管理器设置为 ._ nul当把一个容器白b布局的时候,可以使用 setBou nds()方法手工设置组件本身的大小和组件在容器中的位置。菜单分为下拉式菜单和弹出式菜单两种。处理菜单项事件的接口是 ActionListener ,要实现的接口方法是 actionPerformed(),获得事件源的方法是 getSource()。在Swing中,有两个对话框类,一个是 JDialog类,它提供构造并管理通用对话框功能;另一个是 JOptionPane类,它提供构造常见对话框功能。滚动条对象的事件处理事件类型是AdjustmentEvents,要实现的事件监听接口的方法是,获取事件源对象adjus
36、tmentValueChanaged(),注册事件监听器的方法是addAdjustmentListener() 的方法是 getAdjustable()。Java处理鼠标事件提供了两个接口,分别是MouseListener 接口 和 MouseMotionListener 接口Java技术中,应用程序使用JDBC访问数据库。其中,JDBCAPI和 JDBC马驱动程序协同实现Java程序对数据库的访问功97. DriverManage类的getConnection()方法用于建立数据库连接。java.sq包中用于处理特定数据库连接的类98. l是Connection 类 。java.sq 包中用
37、于在指定的连接中处99. l理SQL语句的类是 Statement 类。100. java.sql包中用于管理查询结果集的类是ResultSet类 。三、判断题1. 程序设计语言按思维模式可以分为编译执行语言和解释执行语言两类。()B7/5Java技术课程2019年秋季期末考试复习题A.正确B.错误2. 在主机操作系统上由软件实现的 Java虚拟机实际上是用本地语言(如C/C+等)编写的程序。(A.正确B.错误3. Eclipse联盟是由Sun公司捐资组建的。() BA.正确B.错误4. Eclipse根据任务的不同把视图和编辑器预先划分为不同的类别,预设好视图的排列方式,并把每一个 类别称为
38、一个视景。()AA.正确 为管理和使用大量的类和接5. 口,A.正确B.错误Java把一组类和接口圭寸装在一个包 内。()AB.错误把基本数据类型包装成类的好处是可以提供基本数据类型的信息,还可以使用类的方法对数据进行操6. 作。A.正确B.错误7. 在声明成员变量的时候,用关键字class修饰的变量是类变量。() BA.正确B.错误8. new运算符用于创建对象,new运算符被执行之后会返回新创建对象的内存地址。A.正确B.错误Java中的多态是指一个程序中同名的不同方法共存的情()A9. 况。A.正确B.错误10. Java中的多态是指用一个类可以创建功能不同的对象。()A.正确B.错误1
39、1. 使用接口实际上要做两件事:第一是声明接口,第二是在类中实现接 口。A.正确12A.13Java使用接口实现“回调”程序设计模式。()A正确B.错误A.14A.15A.16Java程序运行时出现的异常通常是由计算机硬件错误引起的正确B.错误我们把生成异常对象并把它交给运行时系统的异常处理机制的过程称为捕获异 常。正确B.错误按照数据的传输方向,流可以分为字节流和字符流两 类。正确B.错误A.17用于文件的随机读写操作的文件类是 正确File。()BB.错误. 当Java程序启动时,系统就为它创建好一个线程,用这个线程执行 创建好的线程叫主线程。() AA.正确18B.错误main()方法中
40、的代码序列。这个系统A.19A.线程要完成一个应用任务,为了完成该应用任务而编写的代码要放到 正确B.错误小应用程序和面板默认的布局管理器都是正确FlowLayout。()AB.错误20要获取事件e的命令字符串从而知道是哪一个组件激发的事件,start()(方法中。)B则应使用的代码是 e.getActionCommand()B.错误A.正确第二部分:简答题8/5Java技术课程2019年秋季期末考试复习题题1.什么是包?它的主要作用是什么?答案:包是 Java提供的一种组织类的机制,有时也称为类库。这种机制功能相似或相关的类或接口组织在同一个包中,方便类的查找和使用。Java使用包(pack
41、age)这种机制是为了防止命名冲突,访问控制,提供搜索和定位类(class )、接口、枚举 (enumerations )和注释(annotation )等题2.类方法和实例方法有哪些不同?答:答:在声明成员方法的时候,用关键字static 修饰的方法就是类方法,没有被关键字static 修饰的方法就是实例方法。类方法也称为静态方法。类方法和实例方法的区别 在于类方法不针对特定的对象,所以在没有创建对象之前可以执行,而且在类方法中只 能访问类变量和类方法,而不能访问实例变量和实例方法。实例方法则只能针对特定的 对象执行,因此,如果任何对象都不存在,则也就没有可以执行的实例方法。题3.什么是接口
42、?它的作用是什么?中,接口不是类,而是一组抽象方法和常量的集合,用来描述类应该提供什么答案:在Java样义的方法仅仅给出方法名称、参数列表、返回值类型等信息的说明,并不给出 的功能。在接口中定方功能的具体实现。在程序中定义了一个接口以后,就可以声明某 法体的具体代码,即没有给出方法些类实现了这个接口,在实现了该接口的类中出接口的方法的功能代码。这相当于用接口规范了再给实现接口的那些类都必须以特定的形式提供一组特定的功过来,实现某个接口的类必须提供该能。反接口规定的功能,并且要遵从接口中定义的方法的格式约题4.什么是线程?使用多线程有哪些好处?又会带来哪些问题?答案:通俗地讲,线程是一个代码执行
43、使用多线程的好处是:流。(1)多线程为多个代码执行流并发执行提供了可能。(2)多线程程序比多进程程序降低了资源占用要求。使用多线程也会对系统产生一些不利影响:(1)线程需要占用内存,线程越多,内存占用越多。(2)线程过多,会消耗大量CPU 时间来跟踪线程。(3)必须考虑多线程同时访问共享资源的问题,如果没有协调好,就会产生令人意想不到的问题,例如死锁和资源竞争等。(4)因为同一个任务的所有线程都共享相同的地址空间,并共享任务全局变量,所以程序也必须考虑多线程同时访问的全局变量的问题1. 编译型语言和解释型语言有什么不同?Java程序执行前需要用编译器编译,但为什么却说Java是解释型语言呢?答
44、案:编译型语言在程序执行之前,有一个单独的编译过程,将程序翻译成机器语言,以后执行这个 程序的时候就不用再进行翻译了。解释型语言是在运行的时候将程序翻译成机器语言,所以运行速度 相对于编译型语言要慢。C/C+等都是编译型语言,而Java、C#等都是解释型语言。虽然Java 程序在运行之前也有一个编译过程,但是并不是将程序编译成机器语言,而是将它编译成字节码(可以理解为一个中间语言)。在运行的时候,由 JVM将字节码再翻译成机器语言。C/C+编译和链接后,可形成独立的可执行文件,而Java、C#等编译后只得到中间形式的二进制文件,它必须由专用的解释器换成本地机器代码后才能执行。此外,像JavaS
45、cript、VBScript、PHP PERL等脚本语言一般也都由相应的脚本引擎来解释执行2. 什么是Java虚拟机?它的主要功能是什么?JVM是在一台计算机上由软件模拟,也可用硬件实现的假想的计算机,它定义了指令集(相当于中央处理器CPU、寄存器、类文件结构栈、垃圾收集堆、内存区域等JVM指令JVM是执行Java程序的引擎。Java程序编译后得到的二进制形式的字节码实际上就是3. 什么是包?它的主要作用是什么? 答:包是Java提供的一种组织类的机制,有时也称为类库。这种机制功能相似或相关的类或接口组织在同一个包 中,方便类的查找和使用。Java使用包(package)这种机制是为了防止命名
46、冲突,访问控制,提供搜索和定位类(class )、接口、枚举(enumerations )和注释(annotation )等。9/5Java技术课程2019年秋季期末考试复习题4. 类变量和实例变量有哪些不同?答: 在定义成员变量时,如果用 static修饰符修饰,则该变量是类变量(也称“静态变量”),否则是实例变量。类变量不属于类的任何一个具体对象。它保存在类的内存区域的公共存储单元。类的任何一个对象对类变量的存取都是对同一个内存单元进行操作。与类变量相对,实例变量属于类的某个具体的对象。它在类的每个对象的内存区域中都保存一份。类的任何一个对象对实例变量的存取都是对自己内存区域内保存的实例变
47、量的副本进行操作。5. 什么是内部类?使用内部类有什么好处?答:Java允许将一个类的定义放在另一个类的内部。定义在另一个类内部的类就是内部类。但内部类是 一种编译器现象,与虚拟机无关。当使用内部类时,编译器会从外部类中把内嵌的类分离出来并调整编 译结果。内部类允许我们把一些逻辑相关的类组织在一起,并控制在内部的类的访问特性。内部类的对 象持有一个隐式引用,它引用了实例化该内部对象的外围类对象。通过这个引用,可以访问外围类对象 的全部状态。5.什么是多态? Java的编译时多态和运行时多态有什么区别?方法编答:Java中的多态就是指一个程序中同名的不同方法共存的情况。分为编译时多态和运行时多态
48、两类。重载可以实现Java的编译时多态。它是在相同类内,定义名称相同,但参数个数或参数类型不同的方法。 译器会根据实参的个数和类型,确定调用哪个方法。所谓编译时多态,是指程序会根据参数的不同来调用相 应的方法。具体调用哪个被重载的方法,是由编译器在编译阶段决定的。所以编译时多态也叫做静态多态性。 方法覆盖可以实现 Java的运行时多态。它是在子类当中,定义名称、参数个数与类型均与父类相同的方 法,用以改写父类方法的功能。运行时多态是一种在运行时,而不是在编译时调用覆盖方法的一种机制。对于覆 盖的方法,Java运行时系统根据调用该方法的实例的类型,来决定选择哪个方法调用。6. 什么是接口?它的作
49、用是什么?答:在Java中,接口不是类,而是一组抽象方法和常量的集合,用来描述类应该提供什么样的功能。在 接口中定义的方法仅仅给出方法名称、参数列表、返回值类型等信息的说明,并不给出方法体的具体代码, 即没有给出方法功能的具体实现。在程序中定义了一个接口以后,就可以声明某些类实现了这个接口,在 实现了该接口的类中再给出接口的方法的功能代码。这相当于用接口规范了实现接口的那些类都必须以特 定的形式提供一组特定的功能。反过来,实现某个接口的类必须提供该接口规定的功能,并且要遵从接口 中定义的方法的格式约定。7. 什么是异常? Java处理异常的方法是什么?答:所谓异常,就是程序的运行时错误。Jav
50、a通过面向对象的方法来处理异常。在一个方法的运行过程中,如果发生了一个异常,则 Java虚拟机会如 同创建其它对象一样,使用 new在堆上创建异常对象。然后,当前的执 行流程被终止,并且从当前环境中弹出异常对象的引用。此时,Java的异常处理机制接管程序,并开始寻找一个恰当的的地方来继续执行程序。这个恰当的地方就是“异常处理程序”,它的任务是将程序从错误状态中恢复或者做一些简单地处理后结束程序。WOR格式专业资料整理10/5WOR格式Java技术课程2019年秋季期末考试复习题8.简述异常的传播途径答:在“ try ?catch ?finally 结构中”,如果没有一个够匹配已经产生的异常,则
51、执行finally 子句catch子句能(如果存在)。此时,如果仍然没有程序能够处理这个异常,好像发出异常的语句根本没有嵌套在try 语句中,控制流程将会立即离开当前方法,过早地返回调用当前方法的方法中。如果这个调用语句处于某一个try语句范围之内,则将开始执行新一轮的异常匹配操作9.节点流和处理流有什么差别?答:节点流从一个特定的数据源读写数据。即节点流是直接操作文件,网络等的流。处理流是“连接”在已存在的流(节点流或处理流)之上通过对数据的处理为程序提供更为强大的读写功能。Fileinputstream 、FileOutputStream 、FileReader 、FileWriter冲流
52、、转换流、数据流和对象流都是处理流都是节点流。缓10. 什么是线程?使用多线程有哪些好处?又会带来哪些问题?答:通俗地讲,线程是一个代码执行流。使用多线程的好处是:(1)多线程为多个代码执行流并发执行提供了可能。(2)多线程程序比多进程程序降低了资源占用要求。使用多线程也会对系统产生一些不利影响:(1)线程需要占用内存,线程越多,内存占用越多。(2)线程过多,会消耗大量 CPU时间来跟踪线程。(3)必须考虑多线程同时访问共享资源的问题,如果没有协调好,就会产生令人意想不到的问题,例如死锁和资源竞争等。(4 )因为同一个任务的所有线程都共享相同的地址空间,并共享任务的全局变量,所以程序也必须考虑多线程同时访问的全局变量问题11. 试比较Runnable 接口中定义的run()方法与 Application 程序入口 main() 方法有哪些相近之处?在Runnable接口中定义的惟一的方法是run(),在线程执行时调用。线程退出run()之后,就已经死亡,无法重新启动或复用。不管是正常退出还是由于未捕获异常退出,情况都是如此。在效果上,线程的run()方法与Java应用程序的m
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 签订招商合同范本
- 临时二手物品买卖合同
- 租借模具合同范本
- 高档房屋买卖合同范本
- 第9课 宋代经济的发展(教学设计)七年级历史下册同步备课系列(部编版)
- 农林机械采购合同
- 抽拉式衣架(教学设计)-2023-2024学年五年级下册综合实践活动辽师大版
- 浙江省人教版八年级历史与社会上册教学设计4.3.2-北宋与辽、西夏并立
- 第九单元 课题3溶质的质量分数 教学设计-2024-2025学年九年级化学人教版下册
- Unit1 SectionA 1a-2d 教学设计 2024-2025学年人教版英语七年级上册
- 2025年黑龙江农垦职业学院单招职业倾向性测试题库附答案
- 小学科学点亮我的小灯泡省公开课一等奖全国示范课微课金奖课件
- 2023-2024学年高中信息技术必修一沪科版(2019)第三单元项目六《 解决温标转换问题-认识程序和程序设计语言》教学设计
- 【湘教版】2024-2025学年七年级数学下册教学工作计划(及进度表)
- 《急性左心衰》课件
- 新生儿胃肠减压护理
- 二零二五版洗煤厂与矿业公司合作洗煤业务合同3篇
- 上海市第一至十八届高一物理基础知识竞赛试题及答案
- 2024预防流感课件完整版
- 病例报告表(CRF)模板
- DL∕T 2447-2021 水电站防水淹厂房安全检查技术规程
评论
0/150
提交评论