Java期末考试题及答案.pdf
《Java期末考试题及答案.pdf》由会员分享,可在线阅读,更多相关《Java期末考试题及答案.pdf(7页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、用心、精心、决心、匠心呕心沥血整理word1Java 期末考试题及答案Java 期末考试题一、简答题(共 8 个题,每题 5 分,共 40 分)1.java语言有哪些特点,(1)简单的a)Java最初是为对家用电器进行集成控制而设计的一种语言,因此它必须简单明了。b)Java的风格类似于 C+,因而 C+程序员初次接触Java 语言,就会感到很熟悉。从某种意义上讲,Java 语言是 C及 C+语言的一个变种。c)Java摒弃了 C+中容易引发程序错误的一些特性,如指针、结构、枚举以及内存管理等。d)Java提供了丰富的类库,可以帮助我们很方便的开发Java 程序。(2)面向对象的面向对象可以说
2、是Java 最重要的特性,所以它支持继承、重载、多态等面向对象的特性。Java 语言的设计是完全面向对象的,它不支持类似C语言那样的面向过程的程序设计技术。(3)健壮的Java 致力于检查程序在编译和运行时的错误。Java 也是一种强类型的语言,其类型检查比 C+还要严格。类型检查帮助我们检查出许多开发早期出现的错误。Java 自己负责内存管理,提供了垃圾内存回收机制,有效的避免了C+中最头疼的内存泄漏问题。(4)安全的Java 的安全性可从两个方面得到保证。一方面,在 Java 语言里,删除了指针和释放内存等 C+功能,避免了非法内存操作。另一方面,通过Java 的安全体系架构来确保Java
3、代码的安全性。从一开始,Java 就被设计成能够防范各种袭击,包括:禁止运行时堆栈溢出。例如,蠕虫等病毒常用的袭击手段;禁止在自己的处理空间之外破坏内存;未经授权禁止读写文件;许多安全特性相继不断的被加入Java 中。(5)解释的Java 代码是解释执行的,我们使用Java 编译器将 Java 代码编译成字节码,这是一种中间代码,然后由Java 解释器解释执行。而C+程序是编译执行的,C+程序代码被编译为本地机器指令,然后执行。(6)与平台无关的Java 作为一种网络语言,其源代码被编译成一种结构中立的中间文件格式。只要有Java运行系统的机器都能执行这种中间代码。Java 源程序被编译成一种
4、与机器无关的字节码格式,1 在 Java 虚拟机上运行。(7)多线程的用心、精心、决心、匠心呕心沥血整理word2Java 语言的一个重要特性就是在语言级支持多线程的程序设计。多线程就好像我们做一张桌子,如果你一个人完成这张桌子就好像单线程,那么你需要先做桌面,做完桌面后,再做4 个桌子腿,如果现在有5 个人来做桌子在程序中开辟5 个线程,其中1 个人做桌面,另外4 个人分别做 4 个桌子腿,那么这两种方式效率的高低,相信大家都能区分出来。(8)动态的Java 的动态特性是其面向对象设计方法的扩展。它允许程序动态地装入运行过程中所需要的类。在 C+程序设计过程中,每当在类中增加一个实例变量或一
5、个成员函数后,引用该类的所有子类都必须重新编译,否则将导致程序崩溃。Java 从以下几个方面采取措施来解决这个问题。a)Java 编译器不是将对实例变量和成员函数的引用编译为数值引用,而是将符号引用信息在字节码中保存下来,传递给解释器,再由解释器在完成动态连接类后,将符号引用信息转换为数值偏移量。)一个在存储器中生成的对象不在编译过程中决定,而是延迟到运行时由解释器确定。这b样,对类中的变量和方法进行更新时就不至于影响现存的代码。c)解释执行字节码时,这种符号信息的查找和转换过程仅在一个新的名字出现时才进行一次,随后代码便可以全速执行。在运行时确定引用的好处是可以使用已被更新的类,而不必担心会
6、影响原有的代码。如果程序连接了网络中另一系统中的某一类,该类的所有者也可以自由地对该类进行更新,而不会使任何引用该类的程序崩溃。d)Java 还简化了使用一个升级的或全新协议的方法。如果你的系统运行Java 程序时遇到了不知怎样处理的程序,Java 能自动下载你所需要的功能程序。2.什么是 java 虚拟机,Java 虚拟机 JVM(Java Virtual Machine)在 JAVA编程里面具有非常重要的地位。约相当于 JAVA运行环境 JRE。JAVA虚拟机是在真实机器中用软件模拟实现的一种想象机器,它为不同的硬件平台提供了一种编译JAVA技术代码的规范,该规范使JAVA软件独立于平台。
7、JVM对下列各项做出了定义:指令集,寄存器,类文件格式,栈,垃圾收集堆,存储区。Java 虚拟机的功能:2(1)通过 ClassLoader寻找和装载 Class 文件(2)解释字节码成为指令并执行,提供Class 文件的运行环境(3)进行运行期间垃圾回收(4)提供与硬件交互的平台正是因为有虚拟机这中间层,JAVA才能够实现与平JAVA虚拟机是 JAVA平台无关的保障。台无关。虚拟机就好比是一个JAVA运行的基本平台,所有的JAVA程序都运行在虚拟机上。所有与平台有关的东西都是由虚拟机去处理。3.什么是方法重载(Overloading)与方法覆盖(Overriding),用心、精心、决心、匠心
8、呕心沥血整理word3(1)方法重载(Overloading):方法重载是指同名的方法在不同的地方具有多种含义。方法重载使得在类中可以存在方法名相同的多个方法,但方法的原型不能完全相同,由方法的参数不同来决定所使用的是哪个方法。方法的原型包括方法名和方法参数类型。(2)方法覆盖(overriding)方法覆盖也叫方法重写,是指方法的含义被重新编写后的方法所替代。对于方法覆盖,子类可以重新实现父类的某些方法,并具有自己的特征。这样,覆盖隐藏了父类的方法,使子类可以具有自己的实现方法。子类覆盖父类的方法时,子类中方法的访问权限不能低于父类中该方法的访问权限4.java中 equals 和“=”的区
9、别,使用“=”比较基本类型字段,使用equals 方法比较对象字段。=操作比较的是两个变量的值是否相等,对于引用型变量表示的是两个变量在堆中存储的地址是否相同,即栈中的内容是否相同;equals操作表示的两个变量是否是对同一个对象的引用,即堆中的内容是否相同。=比较的是 2 个对象的地址,而equals 比较的是 2 个对象的内容。显然,当equals 为true 时,=不一定为 true。5.什么是抽象类,什么是接口,一般称含有抽象方法的类称为抽象类。抽象类是不能被实例化的类,用abstract修饰。接口是一种与类相似的结构,但接口不是类,而是一组对类的要求,这些类要与接口一致一3 个类可以
10、实现一个或多个接口,并在需要接口的地方,随时使用实现了相应接口的对象。6.什么是多态,一个对象变量可以指向多种实际类型对象的现象被称为“多态”(polymorphism)。7.异常的分类,它们的区别是什么,Error:称为错误,由Java 虚拟机生成并抛出,包括动态连接失败、虚拟机错误等,程序对其不作处理。Exception:所以异常类的父类,其子类对应了各种各样可能出现的异常事件,一般需要用户显式的声明或捕获。Runtime Exception:一类特殊的异常,如被0 除、数组下标超范围等,其产生比较频繁,处理麻烦,如果显式的声明或捕获将会对程序的可读性和运行效率影响很大。因此由系统自动检测
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- Java 期末 考试题 答案
限制150内