JAVA实用教程(第三版)课后习题答案
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
第一章Java语言概述
2.“java编译器将源文件编译为的字节码文件是机器码”这句话正确吗?
答:不正确
3.java应用程序的主类必须含有怎样的方法?
答:含有main方法
4。“java应用程序必须有一个类是public类”这句话正确吗?
答;不正确,只能有一个public类
5。“java Applet程序的主类必须是public类”这句话正确吗?
答:正确,因为java Applet主类必须是Applet类的子类并且是public 的类
6。请叙述java源程序的命名规则。
答:与public的类同名。
7。源文件生成的字节码文件在运行时都加载到内存中吗?
答:非也,动态随需要运行才加载。
8.面向对象的程序设计语言有那些基本特征?
答:封装;继承;多态性。
9.在Java程序中有多个类文件时,用Java命令应该运行那个类?答:具有main方法的类
第二章基本数据类型和数组
4。下列哪些语句是错的?
Int x=120;
Byte b=120;
b=x;
答:B=x;错应为b=(byte)x
5。下列哪些语句是错的?
答:y=d;错,应y=(float)d
6。下列两个语句是等价的吗?
Char x=97;
Char x=…a‟;
答:是等价的。
7。下列system.out.printf语句输出结果是什么?
Int a=97;
Byte b1=(byte)128;
Byte b2=(byte)(-129);
System.out.printf(“%c,%d,%d”,a,b1,b2);
如果输出语句改为:
System.out.printf(“%d,%d,%d”,a,b1,b2);
输出什么?
答:输出a ,-128,127
修改后输出97,-128,127
8.数组是基本数据类型吗?怎样获取数组的长度?
答:不是基本数据类型,是复合数据类型。可以通过:数组名.length
的方法获得数组长度
9。假设有两个int类型数组:
Int[] a=new int[10];
Int[] b=new int[8];
b=a;
A[0]=100;
B[0]的值一定是100吗?
答;一定,因为a数组与b数组引用相同。
10。下列两个语句的作用等价吗?
Int[] a={1,2,3,4,5,6,7,8};
Int[] a=new int[8];
答:不等价,前者有初值,后者指分配空间。初值数组元素为0 11.有语句:
int [] a={1,2,3},b={4,5};
a=b;
求a[0]=? b[1]=? 为什么?
答:a[0]=4 ; b[1]=5 因为有相同的引用,同指向b[].
12.Java语言使用_________编码,每个字符占___________字节________byte位
Unicode 2 16
第三章运算符、表达式与语句
1。下列语句输出的结果是什么?Int a=100, x,y;
X=++a;
Y=a--
System.out.pri ntf(“%d, %d,%d”,x,y,a);答:101,101,100
2。下列语句那些有错误?
Int x=0;
X=5.0/2;
Float y=12.5F;
y=5.0/2;
答:x=5.0/2; 错。
3。下列语句那些有错?
Byte x=32;
Char c=…a‟;
Int n=c-x;
c=c-x;
答:c=c-x;错应为int类型。
4下列语句正确的是
A.表达式“12+56>34”的值是true
B.表达式“12+56||34”是非法表达式
C.表达式“x+y=12”是非法表达式
D.表达式“12+56>34”的值是13
答:(A, C )
5。对于整数m,m<<1的结果一定是2m吗?答:不一定,高位有损失时,不是2m
6.对于两个int整形变量
Int m=120, n=240;
那么m^m=?;
m^n^n=?
答:m^m=0; m^n^n=120
7.下列System.out.printf语句输出的结果是什么?Int x=10, y=10, z=10;
If(x>9){
y=100;
z=200;
}
Else
y=-100;
z=-200;
System.out.printf(“%d,%d,%d”,x,y,z);
输出:10,100,-200
8.下列for语句输出结果是什么?
For(int i=1; i<=4; i++){
Switch(i){
Case 1: System.out.printf(“%c”,‟a‟);
Case 2: System.out.printf(“%c”,‟b‟);
Break;
Case 3: System.out.printf(“%c”,‟c‟);
Case 4: System.out.prin tf(“%c”,‟d‟);
Break;
}
}
输出:a,b, b,c,d,d
9. 下列System.out.printf语句输出的结果是什么?Char a[]={…a‟,‟b‟,‟c‟,‟d‟,‟e‟};
For(i=0; i<=a.length/2; i++)
{
char c=a[i];
a[i]=a[a.length-(i+1)];
a [a.length-(i+1)]=c;
}
System.out.printf(“%c%c%c%c%c”a[0],a[1],a[2],a[3],a[4]); 输出:e,d,c,b,a
10.下列System.out.printf语句输出的结果是什么?
int a[]={3,4,1,2,-6};