全国计算机等级考试二级JAVA历年试题合集含答案(CHM文件下载)>>
1.1Java语言的基本特点
考点1:
Java是一种新的基于面同对象技术的网络编程语言。Java语言利用现有的许多软件新技术,实现了许多原有编程语言所不能完成的功能,弥补了一些编程语言的缺陷。总体上说,Java语言有以下特点。
1.简单易学
Java语言的基础是Oak。简单性首先体现在系统本身的小巧,解释程序、基本类库以及、基本标准类库和多线程支持一共只占有215 KB存储空间,同时对硬件要求不是很高,以尽量精简的系统实现尽量强大的功能其次,在程序语言的语法方面,Java很浅显易懂,不需要很好的编程基础,只需要有一定的基本知识和概念就可以。
2.面向对象技术
面向对象技术是一种新的编程思想,它将人们描述客观世界的方法应用于编程语言中,即将客观世界看成是由不同对象组成的,具有相同或者相似特点的对象的实体可以抽象成类(class),每个类中封装了自己特有的属性和方法。这种方法比原有的面向过程的语言有更好的维护性、可重用性和可扩展性。Java作为一种很成熟的面向对象编程语言,把所有的Java应用和Applet程序都作为对象,并且封装成不同的类,同时Java语言对其简单类型数据也提供了封装对象。封装性实现了模块间的独立性和信息隐藏,继承性实现了代码的可重用,根据这些基本的概念,用户可以根据自己的需要定义数据类型、定义属性、建立方法和建立自己的类。
面向对象技术的几个基本概念如下。
(1)对象,Java编程的最基本单元对象。
(2)类,在Java语言中类是对象的抽象。
(3)继承,实现代码重用,使用继承创建一个新类,这个新类继承已有类的有关功能。这个新类被称做子类;而被继承的类被称做超类或者父类。
(4)封装,对象把实例变量和相关方法封装进单个可表示的单元。
(5)包,Java描述相关类的集合。
3.分布式计算
作为当前计算机网络研究领域中的一个很热门的方向,分布式计算为入们提供了更加快捷更加可靠的服务。Java是一种很好的编程语言,它的类库支持分布式计算所需要的基本协议TCP/IP应用程序可以很容易地通过URL地址访问网络上任何其他地方的对象。
4.健壮性
健壮性也称做鲁棒性。Java语言在编译和运行时进行大量的类型检查,防止不匹配数据类型的出现,对于非法的数据类型,Java语言在编译和解释时指出。Java语言还禁止了使用指针,以及指针数组访问内存。更有特色的是Java语言有自动回收垃圾的功能,这一点很好地解决了正确计算内存地址的问题,同时也省去了在编程时管理内存分配的额外工作量。
5.安全性
在提供高效的分布式网络计算的同时,Java语言还提供了可靠的安全性保障,是目前安全性最佳的程序语言。在Java虚拟机中运行Java程序时,对程序的访问权限有严格的检查;执行字节码之前进行必要检查,不允许使用指针,防止对内存的非法入侵。
6.跨平台和可移植性
在Web应用中,跨平台性是衡量一个软件的重要指标。Java语言在这方面做得很成功,因为Java解释器采用生成与系统结构无关的字节代码指令技术,也就是说,在任何不同的操作系统下,只要正确安装了Java运行系统,就有了编写调试Java程序的平台。在分布式应用中,Java的这个特点使同一个Java程序能在不用的系统上运行,从而提高软件生产效率。可移植性是跨平台特性的一个延伸,即具有了跨平台性,则保证了可移植性。Java程序、Java类库、Java编译器及Java系统都具有可移植性。
7.解释执行
不同于C++语言的编译执行,Java程序采用解释执行的方法。在系统编译运行Java程序时,Java编译器将Java程序转化为字节码,字节本身带有编译时产生的信息,减轻了连接时系统的开销,在运行时,解释器将编译得到的字节码进行解释执行。
8.高效性
虽然解释执行的效率会比较低,并且在系统中额外加载一个JVM (Java虚拟机),增加了系统的负荷,但是由于字节码很容易直接被转化为一些特定的CPU可识别的机器代码,因此执行效率非常高。另外在编译时还可以通过优化字节码来生成更高效的代码,同时在Java语言中提供的多线程技术也为提高程序执行的效率提供了强大的支持。
9.多线程
在处理许多大规模并发、同步和共享事务的时候,多线程技术是一个很好的解决方案Java语言的多线程技术,为实现网络大量并发事件处理提供了良好的编程模式。
10.动态性
Web应用对系统的可扩充性、可伸缩性要求很高,Java语言为这种要求提供了实现方法。在Java语言中,类本身是可扩展和可伸缩的,可以增加或者删除新的方法或者属性等。同时Java语言还提供了很多编程接口,用来支持多重继承,提高了类继承的灵活的扩展性。
11.Applet的特点
嵌入式程序设计也是Java语言的一大特点。Applet程序是一种特殊的Java应用程序,它通过嵌入网页发布到Web上。在HTML页面中嵌入Applet程序,使互联网上的信息系统具有更好的动态性和交互性。Applet类作为Java语言的一个基本的类库,提供了很好的程序设计模式,编写此类应用程序时,通过继承Applet类,用户就只需要考虑相应的方法实现,而不需要过多地注意窗口如何创建,事件如何被处理等基本问题,从而大大简化了程序设计的复杂度。
1.2 Java语言的实现机制
考点2:
1.JVM(Java虚拟机)
Java语言是一种解释执行的语言,Java编译系统先将源文件(.java)编译为字节码文件(.class),然后再由Java虚拟机解释执行字节码文件。字节码不可以直接在操作系统上运行,而只能通过虚拟机解释执行,因此虚拟机将字节码程序和操作系统及硬件分开,使得Java程序能在异构平台上执行。虚拟机执行过程有3个特点:多线程、动态链接和异常处理。
2.垃圾回收机制
Java语言提供了一个系统级的线程,实现对内存使用的监控,在程序不需要时回收闲置不用的内存,从而减轻了程序员对内存管理的负荷。
3.代码的安全检验
除了对一般的编译和解释方面的语法、规则和格式进行检查之外,Java语言还提供了访问权限和类型转换合法性的检验,操作数堆栈溢出检验及参数类型合法检验。另外,Java语言还提供了资源域概念,通过分配方案,设定不同的资源域,无需区分本地与远程。
1.3 Java语言的体系结构
考点3:
JDK目录结构
现在常用的JDK是j2sdkl.4.2版,以该版本为例,其目录结构如下描述。
JDK\bin\ 包括编译器、解释器和一些基本工具。
JDK\demo\ 包括一些简单的示例。
JDK\include\ 是Win32子目录,包括本地方法文件。
JDK\jre\ 是Java程序运行环境的根目录。
JDK\jre\bin 包括平台运行时的工具和类库的可执行文件和动态链接库文件。
JDK\jre\lib 包括Java运行环境的代码库,默认安装文件等。
JDK\lib 包括类库文件。
JDK\src.zip 源代码压缩文件。
考点4:
Java的API结构
1.Java核心包
( 1 ) Java. lang,封装了所有编写Java程序所需要的基本类,包括Object , Class和System等其中Object类是所有类的根类,任何类都是继承该类而建立的;Class类是由编译器动态生成对象的一个伴随每一个类的特殊类,它的对象包含听对应的类的所有信息;System类是一个final类,主要提供标准I/O和对系统环境信息的访问等,该类不可能被实例化。
(2) java.Awt,窗口工具包,提供操作图形用户界面的基本功能。
(3)java.Applct,封装Apple t类的包,提供Applet执行时需要的类。
(4)java.io,封装I/O操作的包。
(5 ) java.util,提供实用程序类及集合类等常用工具类。
(6)其他java.Net、java.math、java.rmi、java.sql、java.text、java.bean、java.security等。
2.Java扩展包
主要包括javax.naming、javax.swing,javax.rmi,javax.transaction、javax.sound和javax.accessibility等。
3.Java语言的文档
API文档是很好的编程工具,它提供了类库的详细说明。文档中类的描述一般由以下几个部分组成:包名、类名、继承结构、类的实现接口、类的定义和说明、类的成员变量列表、构造方法列表、方法返回类型、方法列表、方法详细列表及描述。
考点:5
Java语言的程序结构
Java程序代码的结构主要包括如下几个部分。
首先在源文件最开始处是1个package语句,用于指定源文件所在的包;如果没有该语句则默认将源文件保存在当前文件夹下;紧接着在所有类定义之前的是import语句,用于引入标准的类,一般可有0个或者1个;再接下来是public classDefinition,用于指定源文件的类名,也是源文件名,可以有0个或者1个;再接着是若干classDefinition,用于一般类的定义,可以没有;最后是若干interfaceDefinition,用于定义接口,可以没有。
注意:一个Java源文件中最多只能有一个public类,并且源文件名必须和public类名相同。
考点:6
Java开发环境的设置
(1)Windows 98下开发环境的设置。
找到系统根目录下的autoexec.bat文件,并用文本编辑器打开,在该文件的最后追加如下的命令(其中C:\jdk1.4.2\为JDK的安装目录):
SET PATH=%PATH%;C:\jdkl.4.2\bin
SET CLASSPATH=.;C:\jdkl.4.2\lib
(2)Windows2000下开发环境的设置。
进入“控制面板”→“系统”→“高级”→“环境变量”→“系统变量”,新建一个环境变量名为“classpath”,添加变量值为“C:\jdk1.4.2 \ lib”;然后再双击“path”,添加变量值为“C :\jdkl.4.2 \bin”;最后重新启动系统完成设置。