Java语言程序设计习题答案(清华大学出版杜)张思民版
更新时间:2017/2/6 12:39:00 浏览量:568 手机版
第1章 Java概述
【1】为什么说Java的运行与计算机硬件平台无关?
[解答]:Java编译器能够产生一种与计算机体系结构无关的字节指令(Byte Code),只要安装 了Java虚拟机,Java就可以在相应的处理机上执行。利用Java虚拟机就可以把Java字节码 程序跟具体的操作系统以及硬件平台分隔开来。
【2】Java有什么特点?
[解答]:Java的特点有:
(1) 简单性;
(2) 面向对象;
(3) 跨平台性;
(4) 健壮性;
(5) 安全性;
(6) 可移植性;
(7) 多线程性;
(8) 动态性。
【3】试述Java开发环境的建立过程。
[解答]:Java开发环境的建立过程如下:
1.JDK的下载与安装:从下载最新版的JDK,单击下载后的文件即出现安装界面;在此界面中打击“next”按钮即可;
2.JDK的配置:安装好JDK后,设安装路径为c:\jdk1.5;还需要在环境变量中进行对应的配置。下面以Windows操作系统为例来进行配置。
1) 设置JAVA_HOME环境变量:在桌面上用鼠标右键单击“我的电脑”,依次选择“属性”、“高级”、“环境变量”选项,新建一个系统变量,名称为JAVA_HOME,值为c:\jdk1.5;
2) 设置CLASSPATH环境变量,设置方法和JAVA_HOME一样,其值为c:\jdk1.5\lib\tools.jar;. ;
3) 更新PATH环境变量的值,编辑PATH系统变量,在最后添加c:\jdk1.5\bin;. 。
【4】什么是Java API? 它提供的核心包的主要功能是什么?
[解答]:Java API就是Java所提供的标准类库,它把程序设计所需要的常用的方法和接口分 类封装成包。在Java API中主要包括核心java包、javax扩展包和org扩展包等。核心java 包中封装了程序设计所需要的主要应用类。
【5】如何编写和运行Java应用程序?
[解答]:Java应用程序的编写和运行过程:
1.建立Java源文件:首先创建Java的源代码,即建立一个文本文档,包括有符合Java规范的语句。
2.编译源文件:“编译”就是将一个源代码文件翻译成计算机可以理解和处理的格式的过程。Java源程序编译后会生成一个字节码文件,即带扩展名class的文件。Java字节码文件中包含的使Java解释程序将要执行的指令码。
3.执行字节码文件:通过Java虚拟机运行字节码文件。
【6】为什么要为程序添加注释,在Java程序中如何为程序添加注释?
[解答]:注释是程序中的说明性文字,是程序的非执行部分。它的作用是为程序添加说明,增加程序的可读性。
Java使用以下二种方式对程序进行注释:
1.“//”符号,它表示从“//”符号开始到此行的末尾位置都作为注释。
2.“/*...*/”符号,它表示从“/*”开始到“*/”结束的部分都作为注释部分,可以使多行注释。
【7】Java工具集中的javac、java、appletviewer各有什么作用?
[解答]:javac的作用:它是Java编译器,用于将Java源程序编译成字节码文件; java的作用:它是Java解释器,用于解释执行Java字节码文件;
appletviewer的作用:Applet程序浏览器,用于测试和运行Applet程序。
【8】如何建立和运行Java Applet程序?
[解答]:Java Applet程序的建立和运行过程:
1.建立Java源文件:首先创建Java的源代码,即建立一个文本文档,包括有符合Java规范的语句。
2.编译源文件:将Java源文件编译成.Class的字节码文件,然后再将字节码文件嵌入到一个HTML文件中。
3.利用浏览器解释执行html文件。
第2章 Java基础
【1】什么是数据类型?为什么要将数据划分为不同的数据类型?
[解答]:Java是一门强类型语言。数据类型是用来区分不同的数据;由于数据在存储时所需要的容量各不相同,不同的数据就必须要分配不同大小的内存空间来存储,所有就要将数据划分成不同的数据类型。
【2】Java中有哪些数据类型?
[解答]:Java中有8 种基本数据类型:字节型(byte),短整型(short),整型(int),长整型(long),字符型(char),单精度型(float),双精度型(double),布尔型(boolean)。
【3】声明变量的作用是什么?
[解答]:变量时一个数据存储空间的表示,将数据指定给变量,就是将数据存储至对应的内存空间,调用变量,就是将对应的内存空间的数据取出来使用。声明变量就是申请一个内存空间。
【4】若x=4,y=2,计算z值:
(1) z=x&y
(2) z=x|y
(3) z=x|y
(4) z=x>>y
(5) z= ~ x
(6) z= x<< y
(7) z= x>>> y
[解答]:
public class Test_4
{ public static void main(String[] args)
{ int x = 4, y = 2, z; //初始化x,y,z
z = x & y; //求z=x&y;即x与y的值
System.out.println("4_1:"+z);
z = x | y; //求z=x|y;即x或y的值
System.out.println("4_2:"+z);
z = x ^ y; //求z=x^y;即x异或y的值
System.out.println("4_3:"+z);
z = x >> y; //求z=x>>y;即x右移y位的值
System.out.println("4_4:"+z);
z = ~x; //求z=~x;即x位反的值
System.out.println("4_5:"+z);
z = x << y; //求z=x<
System.out.println("4_6:"+z);
z = x >>> y; //求z=x>>>y;即x无符号右移y位的值
System.out.println("4_7:"+z);
}
}
【5】假设x=10,y=20,z=30,求下列布尔表达式的值:
(1) x<10 || x<10
(2) x>y && y>x
(3) (x
(4) z-y==x && (y-z)==x
(5) x<10 && y>x
(6) x>y || y>x
(7) !(x
(8) ( !(x==y)) && (x !=y) && (x
[解答]:
public class Test_5
{ public static void main(String[] args)
{ int x = 10, y = 20, z = 30;
boolean flag;
//求x<10||x<10布尔值
flag = x < 10 || x < 10;
System.out.println("5_1:"+flag);
//求x>y&&y
flag = x > y && y < x;
System.out.println("5_2:"+flag);
//求(x
flag = (x < y + z) && (x + 10 <= 20);
System.out.println("5_3:"+flag);
//求z-y==x&&(y-z)==x布尔值
flag = z - y == x && (y - z) == x;
System.out.println("5_4:"+flag);
//求x<10&&x>10布尔值
flag = x < 10 && x > 10;
System.out.println("5_5:"+flag);
//求x>y||y>x布尔值
flag = x > y || y > x;
System.out.println("5_6:"+flag);
//求!(x
flag = !(x < y + z) || !(x + 10 <= 20);
System.out.println("5_7:"+flag);
//求(!(x==y))&&(x!=y)&&(x
flag = (!(x == y)) && (x != y) && (x < y || y < x);
System.out.println("5_8:"+flag);
}
}
【6】什么是表达式? 什么是语句?
[解答]:表达式是由运算符,操作数和方法调用按照语言的语法构造而成的符号序列。表达式可用于计算一个格式,位变量赋值以及帮助控制程序执行流程。
语句:语句组成了一个执行程序的基本单元,类似于自然语言的句子。包括表达式语句、复合语句、控制语句等。
【7】Java有哪些数据类型?请描述其分类情况。
[解答]:Java定义了8个基本数据类型:字节型,短整型,整型,长整型,字符型,浮点型,双精度型,布尔型。它们分为4组:
1) 整数型(byte,short,int,long)
2) 浮点数型(float,double)
3) 字符型(char)
4) 布尔型(boolean)
【8】试比较break和continue语句的区别?
[解答]:Break:强行退出循环,忽略循环体中的任何其他语句和循环的条件的条件测试。 Continue:语句用来终止本次循环。其功能是终止当前正在进行的本轮循环,即跳过后面剩余的语句,转而执行循环的第一条语句,计算和判断循环条件,决定是否进入下一轮循环。
【9】有一函数:
x(x<1)