《JAVA大学实用教程》(第四版)课后习题答案
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
第一章Java 语言概述
2.“java编译器将源文件编译为的字节码文件是机器码”这句话正确吗?答:不正确
3.j ava 应用程序的主类必须含有怎样的方法?
答:含有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--
Sy stem.out.printf(“%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.printf(“%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};