Java语言程序设计 第三版-习题答案

上传人:飞****9 文档编号:132059646 上传时间:2020-05-12 格式:DOC 页数:19 大小:76.59KB
返回 下载 相关 举报
Java语言程序设计 第三版-习题答案_第1页
第1页 / 共19页
Java语言程序设计 第三版-习题答案_第2页
第2页 / 共19页
Java语言程序设计 第三版-习题答案_第3页
第3页 / 共19页
Java语言程序设计 第三版-习题答案_第4页
第4页 / 共19页
Java语言程序设计 第三版-习题答案_第5页
第5页 / 共19页
点击查看更多>>
资源描述

《Java语言程序设计 第三版-习题答案》由会员分享,可在线阅读,更多相关《Java语言程序设计 第三版-习题答案(19页珍藏版)》请在金锄头文库上搜索。

1、第一章 绪论1 简述Java技术体系的组成。Java技术体系主要由三部分组成:Java平台标准版Java SE,Java平台企业版Java EE,以及Java 平台微缩版Java ME。Java SE为Java桌面和工作组级应用的开发与运行提供了环境。它的实现主要包括Java SE Development Kit(JDK)和Java SE Runtime Environment(JRE)。Java SE提供了编写与运行Java Applet与Application的编译器、开发工具、运行环境与Java API。Java EE定义了基于组件的多层企业级应用的开发标准,面向企业级和高端服务器的In

2、ternet应用开发。它基于Java SE,包括Enterprise JavaBeans(EJB),Java Servlets API以及Java Server Pages(JSP)等技术,并为企业级应用的开发提供了各种服务和工具。Java ME是针对消费类电子设备如移动电话、电视置顶盒、汽车导航系统等的嵌入式计算的一组技术和规范。2 Java的特征有哪些?简述这些特征的含义。Java语言的特征包括:简单(Simple)、面向对象(Object oriented)、分布式(Distributed)、解释型(Interpreted)、健壮(Robust)、安全(Secure)、体系结构中立(Ar

3、chitecture neutral)、可移植(Portable)、高性能(High performance)、多线程(Multithreaded)和动态(Dynamic)l 简单性:Java语言语法和语义都比较单纯,容易学习和使用。另外,去掉C+中的指针,取消多重继承和运算符重载,内存管理由程序员移向Java内嵌的自动内存回收机制等l 面向对象:作为一种面向对象的编程语言,Java不仅最为“纯洁”,也对面向对象方法学的支持也最为全面。Java的对象有模块化性质和信息隐藏能力,满足面向对象的封装要求,同时支持继承和多态。l 分布式:Java支持的分布式计算包括两种层次:一是数据分布,即应用系统

4、所操作的数据可以分散存储在不同的网络节点上,可以通过Java的URL类访问。二是操作分布,即应用系统的计算可通过嵌在WWW页面中的Applet(小应用程序),分布到不同的网络节点完成。l 半编译,半解释:采用编译器对程序进行编译,但编译得到的是一种中性的字节码,并不是本机代码,而字节码的执行采取解释执行方式。该特征,提高了Java 的可移植性,并使得Java语言兼具编译执行的效率优势和解释执行的灵活性。l 健壮性:Java提供自动垃圾收集来进行内存管理,防止程序员在管理内存时容易产生的错误。通过集成的面向对象的例外处理机制,帮助程序员正确地进行选择以防止系统的崩溃。另外,Java是一种强类型语

5、言,程序编译时要经过严格的类型检查,防止程序运行时出现类型不匹配等问题。l 安全性:Java在语言和运行环境中引入了多级安全措施,其采用的主要安全机制有:内存分配及布局由Java 运行系统规定。运行系统执行基于数字签名技术的代码认证、字节码验证与代码访问权限控制的安全控制模型。l 体系结构中立:Java为了做到结构中立,除了上面提到的编译生成机器无关的字节码外,还制定了完整统一的语言文本。为了使Java 的应用程序能不依赖于底层具体的系统,Java 语言环境还提供了一个用于访问底层操作系统功能的可扩展类库,当程序使用这些库时,可以确保它能运行在支持Java 的各种平台上。l 可移植性:Java

6、的最大特点是“一次编程,处处运行”。任何机器只要配备了Java解释器,便可运行Java程序。这种可移植性源于两方面:一是Java的半编译、半解释特征;另一方面是Java体系结构中立,采用标准的独立于硬件平台的数据类型。l 高性能:Java语言的字节码与机器码十分接近,使得字节码到机器码的转换十分快捷。另外,Java还提供了即时编译技术,提高了Java应用的运行速度。l 多线程:Java的特点是在语言级嵌入了多线程机制,支持程序的并发处理功能。从程序的角度看,一个线程就是应用程序中的一个执行流。Java 将临界区保护规则等集成到语言中实现线程同步,使这些规则的使用更加方便有效。l 动态特性:Ja

7、va程序的基本组成单元是类,而Java的类又是运行时动态装载的,这使将Java可以动态地维护应用程序及其支持类之间的一致性。3 Java语言的语法机制与C/C+有何异同?Java的基本语法机制,例如:数据类型、表达式、程序流控制、结构化异常处理等,都与C+相同。明显区别于C+的语法机制,包括类(class)、接口(Interface)、程序包(package)、多线程以及取消指针。4 Java运行系统由哪些部分组成?Java程序的运行过程是怎样的?Java运行系统一般包括以下几部分:类装配器、字节码验证器、解释器、代码生成器和运行支持库。Java运行系统运行的是字节码即.class文件。执行字

8、节码的过程可分为三步:(1) 代码的装入由类装配器装入程序运行时需要的所有代码,其中包括程序代码中调用到的所有类。当装入了运行程序需要的所有类后,运行系统便可以确定整个可执行程序的内存布局。(2) 代码的验证由字节码检验器进行安全检查,以确保代码不违反Java的安全性规则,同时字节码验证器还可发现操作数栈溢出、非法数据类型转化等多种错误。(3) 代码的执行Java字节码的运行可以有两种方式:即时编译(Just-In-Time)方式和解释执行方式。5 什么是JVM?Java虚拟机是一个想象中的,能运行Java字节码的操作平台。而JVM规范提供了这个平台的严格的规范说明,包括指令系统,字节码格式等

9、。JVM进一步可用软件在不同的计算机系统上实现或用硬件实现。JVM的实现包括字节码验证、解释器、内存垃圾回收等,是上述Java运行系统的核心,Java运行系统是各供应商对JVM的具体实现。7. 编写一个Java程序,在屏幕上输出“欢迎学习Java语言!”的字符串。public class Welcomepublic static void main (String args)System.out.println(欢迎学习Java语言!); 第二章 面向对象程序设计基本概念1 什么是对象?什么是类?什么是实体?它们之间的相互关系是怎样的?试举例说明。在面向对象方法中,对象是现实世界实体或概念在计

10、算机世界中的抽象表示,是具有唯一对象名、固定对外接口的一组变量/属性和方法的集合,是用来模拟组成或影响现实世界问题的一个或一组因素。类定义了对象类型,包含同一类型的对象具有共同的特征与行为。使用class定义的类在程序中称为一种抽象数据类型,它是面向对象程序设计语言的基本概念。一个类在定义后,我们就可以象使用其它数据类型一样,声明该类的变量并创建该变量所指向的对象,然后通过该变量调用对象的方法实现对对象的操作。实体表示现实世界中,客观存在并可区分的事物或概念。在面向对象的问题求解方法中,首先对现实世界的问题域进行语义抽象,从各类对象中抽象出对象类型,并得到对象类型之间的关联,形成问题的概念模型

11、。接下来,进行概念模型到机器(程序)模型的转换得到机器世界的模型。机器模型是由计算机能够理解和处理的类构成的。将类实例化就得到了现实世界实体的面向对象的映射对象,在程序中对对象进行操作,就可以模拟现实世界中的实体及实体之间相互作用,解决由这些实体构成的现实世界中的问题。举例来说,我们很多人都有自行车,你的自行车就是“自行车”这类交通工具中的一个实例,即现实世界的一个实体。在机器世界中即程序中的自行车类包含了自行车都有相同的状态,例如两个轮子、脚踏板速度等,以及共同的行为,如刹车等,将自行车类实例化就得到了现实世界的自行车实体的映射自行车对象,在程序中对这个对象进行操作,就可以模拟现实世界中的自

12、行车与其他实体之间相互作用。2 什么是对象的状态与行为?设有对象“学生”,试给出这个对象的状态和行为。现实世界的对象具有两个特征:状态与行为。面向对象程序设计语言中的对象是以现实世界的对象为模型构造的,也具有状态与行为,其中状态保存在一组变量中,而对象的行为通过方法实现。“学生”的状态包括:学号、姓名、年龄、所属院系、专业方向等;“学生”的行为包括:注册、选课、基本信息维护等。3 什么是封装与数据隐藏?使用对象的对外接口(方法)将对象的变量与方法实现保护起来,外界只能通过对象的接口访问对象的服务,而对对象其它成员都无法访问,就称为封装。因此,对象中的数据封装同时也实现了对象的数据隐藏。数据隐藏

13、是通过对象成员的访问控制实现的。在Java语言中提供了四种不同层次的访问控制,即public,protected,default和private,从而实现了对象四种不同程度的数据隐藏。4 什么是上溯造型?什么是晚联编?多态的含义是什么?上溯造型的含义是子类沿着类继承体系向上,将其类型塑造为父类类型,使得子类对象能够当作父类对象处理。程序中调用对象的方法时,所调用的代码直到运行时刻才确定。因此,在程序编译时,编译器可以保证该方法存在并且执行参数与返回结果的类型检查,但却不知道要执行的准确代码。在运行时刻,Java运行系统根据对象变量当时所指向对象的实际类型,调用该对象的相应方法。这种技术称为晚联

14、编。面向对象的多态特征,简而言之就是“对外一个接口,内部多种实现”。面向对象程序设计语言支持两种形式的多态:运行时多态和编译时多态。编译时多态主要是通过重载(Overloading)技术实现的,即在一个类中相同的方法名可用来定义多种不同的方法。运行时多态是在面向对象的继承性的基础上建立的,是运行时动态产生的多态性,是面向对象的重要特性之一。5 怎样理解面向对象程序设计方法的内涵?面向对象程序设计方法的内涵,可以由对象、数据抽象、封装、继承和多态等核心概念和特征表达:程序中所有东西都是对象;程序是一系列对象的组合;每个对象都有自己的存储空间,可以容纳其它对象;每个对象都有一种类型,即都归属于一个

15、类,类最主要的特征是对外接口;同一类型的所有对象都能够接收相同的消息,子类与父类具有“同一类型”,这就是面向对象程序语言中的多态性。6面向对象程序设计有哪些优点?面向对象程序设计方法的主要优势是具有更好的可重用性、可扩展性、可管理与维护性。在面向对象程序设计中,可重用的代码是类和对象。数据抽象、封装、继承、多态等特征都围绕和体现了代码重用的思想。面向对象的封装、继承和多态使得程序可以对一个类的内部变量和方法进行修改或增加新的变量和方法,可以按照需要派生新的子类,但仍可以保证调用这些类接口的程序不做改动,从而使程序具有很强的可扩展性与易维护性。而面向对象的数据抽象与封装,使程序具有模块化特性,这

16、简化了程序中代码之间的关联,使程序更易于管理和控制。第三章 Java语言基础 1.下列标识符哪些是合法的?$88,#67,num,applet,Applet,7#T,b+,-b合法的标识符:$88,num,applet,Applet2Java有哪些基本数据类型?什么是复合数据类型?对于这两种类型的变量,系统的处理有什么不同?Java基本数据类型包括:boolean,char,byte,short,int,long,double和float复合数据类型:一般将用户定义的新类型称为复合数据类型。Java以类和接口的形式定义新类型。因此在Java中类和接口是两种用户定义的复合数据类型。对于这两种类型的变量,系统的处理方式:基

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 学术论文 > 其它学术论文

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号