java程序设计教程第二版课后答案
- 格式:docx
- 大小:17.50 KB
- 文档页数:16
java程序设计教程第二版课后答案
【篇一:《java程序设计》课后习题参考答案】
参考答案
――武汉大学出版社
习题1参考答案
1.java语言的特点有哪些??
答:参考1.1.2
防止直接访问数据变量看起来有些奇怪,但它实际上却对使用类的程序质量有极大的好处。既然数据的单个项是不可访问的,那么惟一的办法就是通过方法来读或写。因此,如果要求类成员内部的一致性,就应该通过类本身的方法来处理。
这种数据隐藏技术就是面向对象的重要特性——封装。它将类的外部界面与类功能的实现区分开来,隐藏实现细节,(通过公共方法)保留有限的对外接口,迫使用户使用外部界面,通过访问接口实现对数据的操作。即使实现细节发生了改变,还可通过界面承担其功能而保留原样,确保调用它的代码还继续工作,这使代码维护更简单。
2.简述封装的优点。?
答:封装是一个简单而有效的思想,优点有:(1)模块化,对内成为一个结构完整、可进行自我管理、自我平衡、高度集中的整体。(2)信息隐蔽,对外则是一个功能明确、接口单一、可在各种适合的环境下都能独立工作的有机单元。
面向对象的程序设计实现了对象的封装,使得用户不必关心诸如对象的行为是如何实现的这样一些细节。通过对对象的封装,实现了模块化和信息隐藏,有利于程序的可移植性和安全性,同时也有利于对复杂对象的管理。类的封装性使得代码的可重用性大为提高,这样的有机单元特别适合构建大型标准化的软件系统,具有很高的开发效率。
3.java的基本工具有哪些??
(1) javac 编译器
(2) java 解释器
(3) jdb java 语言调试器
(4) javadoc api文档管理器
(5) javah 头文件生成器
(6) appletviewer 小应用程序浏览器 (7) javap 类文件反汇编器
4.java开发环境是如何配置的?
答:对于windows 2000以上版本的操作系统,可以打开[控制面板]窗口,双击其中的[系统]图标,在[系统特性]窗口中单击[高级]选项卡,进而单击[环境变量]按钮。在出现的[环境变量]窗口中,在[系统变量]框中选择[path]项,单击[编辑]按钮,在弹出的[编辑系统变量]窗口的[变量值]框后加上上面两条语句。
1.java语言包含哪些数据类型??
答:包含基本数据类型和复合数据类型。基本类型包括整数类型、浮点数类型、布尔类型。复合类型包括类类型(class type)、接口类型(interface type)与数组类型(array type)。
2.java有多少关键字??
答:abstract, continue, for, new, switch,boolean, default,
goto*, null, synchronized,break, do, if, package, this,byte,
double, implements, private, threadsafe,byvalve*, else, import,
protected, throw,case, extends, instanceof, public, transient,catch, false, int, return, true,char, final, interface, short, try,class, finally, long, static, void,const*, float, native, super,
while
3.byte、short、int、long和char整数类型各占了多少字节??
答:byte占了1字节,short占了2字节,int占了4字节,long占了8字节,char占了2字节。
4.java的控制结构有哪几类??
答:流程控制语句可以分为选择、循环和跳转3大类。
习题3参考答案?
1.声明类的格式是什么??
答:
[类修饰符]class类名称[extends父类名称][implements接口名称]
{
类主体
}
2.面向对象程序设计中,什么是构造函数??
答:类类型声明方法成员,如果方法名称与类名称一样,这种方法成员称为构造函数。
习题4参考答案? 1.面向对象程序设计中,什么是封装??
2.面向对象程序设计中,什么是数据抽象化??
答:oop程序设计的重心为对象,因些对象被视为拥有本身数据与处理过程的组件,这些组件都有其独立性。所以对象内、外程序的处理就有某种程度的限制,换句话说,对象外部并不明了对象内部数据如何传递、改变,如何处理过程。这种隐藏对象内部的数据及处理过程的方式,使得对象抽象化,有人将这种处理方式称为数据抽象化。类库就是java api(application programminginterface,应用程序接口),是系统提供的已实现的标准类的集合。在程序设计中,合理和充分利用类库提供的类和接口,不仅可以完成字符串处理、绘图、网络应用、数学计算等多方面的工作,而且可以大大提高编程效率,使程序简练、易懂。
1.简述数据类型类的常用方法。?
答:对所有数据类型类的对象,形如“对象名.xxxxvalue()”的成员方法,用来获得对象中的基本类型数据。包括:
对象名.doublevalue();
对象名.intvalue();
对象名.bytevalue();
对象名.shortvalue();
对象名.longvalue();
对象名.charvalue();
对象名.floatvalue();
对象名.booleanvalue();
2.何为命令行参数??
答:所谓命令行参数,是指执行某个java应用程序时,从命令行中向程序直接传送的参数。我们可以获得这些参数的值,并运用到程序的执行过程中。
3.如何定义和创建一个数组??
答:要创建一个数组,必须首先定义数组变量所需的类型。通用的一维数组的声明格式是:type arrayname[];其中,type定义了数组的基本类型,arrayname是数组的名称。基本类型决定了组成数组的每一个基本元素的数据类型。
4.如何声明一个二组数组??
答:二维数组的一般声明格式如下:
数组元素类型 数组名[][]; 数组元素类型 [][]数组名;
5.列举一下数据类型类的常用方法。?
答:对所有数据类型类的对象,形如“对象名、xxxxvalue()”的成员方法,用来获得对象中的基本数据类型。包括:对象名、double value();对象名、int value();对象名、byte value();等。
习题6参考答案?
1.解释下列方法的意义:?
(1)tolowercase()(2)touppercase() (3)charat()?
(4)equalsignorecase() (5)capacity() (6)setlength()?
(7)reverse() (8)replace(start,end,str)?
答:
(1)将字符转换成小写字符
(2)将字符转换成大写字符
(3)从0算起第index字符
(4)忽略大小写,比较两字符串是否,相等,若是返回true,否则返回false
(5)计算字符串缓冲器的容量
(6)设定字符串的长度
(7)将字符串反转排列
(8)返回字符串缓冲器从stare开始到end结束字符被str字符串取代
2.capacity()与length()的用法有什么不同??
答: capacity()用来计算字符串缓冲器的容量,length()用于计算字符串长度。如:string buffer ko1=new string buffer(20),则ko1 capacity()=20,但ko1,length()可能是0或20,视ko1字符串长度而定。
习题7参考答案?
1.什么叫流?流式输入输出有什么特点??
答:java中的流是对数据传递机制的抽象。流分为两种:输入和输出。java中所有输入/输出操作都是使用基本字节类型完成的。字符是通过值为字节类型的特殊代码处理的。java程序的所有读写操作都是通过流实现的。流是一组字符序列。输入源可以是键盘、文件或网络,输出自的地可以是屏幕、文件或网络。数据作为字节序列进行发送和接收。
2.file类有哪些构造函数和常用方法?并举例说明。? 答:使用下面的构造函数创建file对象:
?file(string dirpath)
?file(stringdirpath,stringnlename)
?file(fnedirobj,stringfilename)
这里,dirpath是文件的路径名,filename是文件名,dirobj是指定目录的fie对象。 下面的例子创建了3个文件:f1、f2和f3。第一个file对象只有目录路径一个参数。第二个有两个参数——目录和文件名。第三个包括赋给n的文件路径和文件名。f3和f2指的是同一个文件。最后一个包括指定文件“autoexec.bat”所在的目录名称。
file f1=newfile(/);
file f2=newfile(/,autoexec.bat);
file f3=newfile(f1,autoexec.bat);
file f3=newfile(user,autoexec.bat);
file类的方法
下面是file类中一些重要的方法:
?getname()
该方法用来获取指定文件的名称。
?getpath()/getabsolutepath()
这两个方法分别得到指定文件的相对路径和绝对路径。
?exists()
该方法用来判断命名的文件是否存在于目录当中。
?isfile()/isdirectory()
这两个方法分别用来判断命名的文件是否是普通文件和目录。
?canread()/canwrite()
这两个方法分别用来判断指定文件是否可读写。
?lastmodified()
该方法返回文件最近一次被修改的时间。
?length()
该方法返回文件的大小,以字节记。
?delete()
该方法用来删除指定文件。
?renameto()
该方法用来对已知文件进行重命名。它将目的文件或者说重命名后的文件对象作为参数。
?isfile()