习题一
1.简述面向对象软件开发方法的重要意义。
【答】:
java程序设计主要内容面向对象的软件开发方法按问题论域来设计模块,以对象代表问题解的中心环节,力求
符合人们日常的思维习惯,采用―对象+消息‖的程序设计模式,降低或分解问题的难度
和复杂性,从而以较小的代价和较高的收益获得较满意的效果,满足软件工程发展需要。
2.解释下面几个概念:
1)对象2)实例3)类 4)消息 5)封装 6)继承 7)多态
【答】:
1)对象:就是现实世界中某个具体的物理实体在计算机中的映射和体现,是由属性和
操作所构成的一个封闭整体。
2)实例:是对象在计算机内存中的映像。
3)类:是描述对象的―基本原型‖,是描述性的类别或模板,即对一组对象的抽象。
它定义一组对象所能拥有的共同特征,用以说明该组对象的能力与性质。
4)消息:消息是对象之间进行通信的一种数据结构。
5)封装:封装性是保证软件部件具有优良的模块性的基础。面向对象的类是封装良好
的模块,类定义将其说明(用户可见的外部接口)与实现(用户不可见的内部实现)
显式地分开,其内部实现按其具体定义的作用域提供保护。
6)继承:继承性是子类自动共享父类数据结构和方法的机制,这是类之间的一种关系。
7)多态:多态性是指一个名字具有多种语义,即指同一消息为不同对象所接受时,可
以导致不同的操作。
3.对象―汽车‖与对象―小汽车‖是什么关系,对象―汽车‖与―轮胎‖又是什么关系?
【答】:
对象―汽车‖与对象―小汽车‖具有继承关系,即对象―小汽车‖继承了对象―汽车‖。
―轮胎‖是对象―汽车‖的一个属性,所以对象―汽车‖包含―轮胎‖,二者是包含关
系。
4.简述J ava语言的主要特点。
【答】:
J ava语言的主要特点:(1)简单性(2)面向对象(3)分布式(4)健壮性(5)
结构中立(6)安全性(7)可移植(8)解释的(9)高性能(10)多线程(11)
动态性
5.简述Jav a语言与C/C++语言的主要差异。
【答】:
Ja va基于C++,与之有许多相似之处,但其设计更易于使用,它们之间主要差异有:
(1)Java中无C/C++中最复杂并有潜在危险的指针
(2)Java无C/C++中的#i nclud e 、#d efine和头文件。
(3)Ja va无C/C++中的struc ture,union及type def。
(4)Java无C/C++中的函数、指针和多重继承。
(5)Java无C/C++中的go to指令。
(6)Ja va无C/C++中的操作符重载(Oper atior Over loadi ng)、自动类型的转换。
(7)Java系统要求对对象进行相容性检查,以防止不安全的类型转换。
(8)J ava语言最强大的特性之一是它的平台独立性,Jav a可以处理好平台之间的移植问题。
(9)Java语言中没有全局变量的定义,只能通过公用的静态的变量实现,从而减少了
引起错误的地方。
6.什么叫Jav a虚拟机?什么叫Ja va的字节码?
【答】:
Jav a虚拟机是一个软件系统,它可以翻译并运行Java字节码。它是Java的核心,保
证了在任何异构的环境下都可运行Java程序,解决了Java的跨平台的问题。
Java的字节码(b yte‐c ode)是与平台无关的是虚拟机的机器指令
7.简述Java程序的运行过程。
【答】:
首先编写Java源代码程序,通过Ja va虚拟机编译成.c lass的字节码程序。然后通过然
后再执行翻译所生成的字节代码,属于先解释后执行方式。在运行时,字节码载入器
用于调入包含、继承所用到的所有类,确定内存分配,变成真正可执行的机器码。由,
再通过字节码校验器就是用于检验字节码是否正确,如果通过校验,再由系统执行平
台解释执行。
8.Java程序分哪两类?各有什么特点?
【答】:
Java程序根据程序结构的组成和运行环境的不同可以分为两类:JavaAppli catio n (Jav a
独立应用程序)和JavaApple t(Jav a小应用程序)。Ja va独立应用程序是一个完整的程
序,需要独立的Ja va解释器来解释执行;而Jav a小应用程序则是嵌在Web页面中的非
独立应用程序,由Web浏览器内部所包含的J ava解释器来解释执行,为We b页面增加
交互性和动态性。
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论