Java-2实⽤教程习题解答
习题解答
习题1(第1章)
⼀、问答题
1.Java语⾔的主要贡献者是谁?
2.开发Java应⽤程序需要经过哪些主要步骤?
3.Java源⽂件是由什么组成的?⼀个源⽂件中必须要有public类吗?
4.如果JDK的安装⽬录为D:\jdk,应当怎样设置path和classpath的值?
5.Java源⽂件的扩展名是什么?Java字节码的扩展名是什么?
6.如果Java应⽤程序主类的名字是Bird,编译之后,应当怎样运⾏该程序?
7.有哪两种编程风格,在格式上各有怎样的特点?
1.James Gosling
2.需3个步骤:
1)⽤⽂本编辑器编写源⽂件。
2)使⽤javac编译源⽂件,得到字节码⽂件。
3)使⽤解释器运⾏程序。
3.源⽂件由若⼲个类所构成。对于应⽤程序,必须有⼀个类含有public static void main(String args[])的⽅法,含有该⽅法的类称为应⽤程序的主类。不⼀定,但⾄多有⼀个public类。
4.set classpath=D:\jdk\jre\lib\;.;
5. java和class
6. java Bird
7.独⾏风格(⼤括号独占⾏)和⾏尾风格(左⼤扩号在上⼀⾏⾏尾,右⼤括号独占⾏)
⼆、选择题
1.B。2.D。
1.下列哪个是JDK提供的编译器?
A)
B)
C)
D)
2.下列哪个是Java应⽤程序主类中正确的main⽅法?
A) public void main (String args[ ])
B) static void main (String args[ ])
C) public static void Main (String args[])
D) public static void main (String args[ ])
三、阅读程序
阅读下列Java源⽂件,并回答问题。
public class Person {
void speakHello() {
"您好,很⾼兴认识您");
" nice to meet you");
}
}
class Xiti {
public static void main(String args[]) {
Person zhang = new Person();
();
}
}
(a)上述源⽂件的名字是什么?
(b)编译上述源⽂件将⽣成⼏个字节码⽂件?这些字节码⽂件的名字都是什么?
(c)在命令⾏执⾏java Person得到怎样的错误提⽰?执⾏java xiti得到怎样的错误提⽰?执⾏java 得到怎样的错误提⽰?执⾏java Xiti得到怎样的输出结果?
1.(a)。(b)两个字节码,分别是和。(c)得到“NoSuchMethodError”,得到“NoClassDefFoundError: Xiti/class”,得到“您好,很⾼兴认识您 nice to meet you”
习题2(第2章)
⼀、问答题
1.什么叫标识符?标识符的规则是什么?false是否可以作为标识符。
2.什么叫关键字?true和false是否是关键字?请说出6个关键字。
3.Java的基本数据类型都是什么?
4.float型常量和double型常量在表⽰上有什么区别?
5. 怎样获取⼀维数组的长度,怎样获取⼆维数组中⼀维数组的个数。
1.⽤来标识类名、变量名、⽅法名、类型名、数组名、⽂件名的有效字符序列称为标识符。标识符由字母、下划线、美元符号和数字组成,第⼀个字符不能是数字。false不是标识符。
2.关键字就是Java语⾔中已经被赋予特定意义的⼀些单词,不可以把关键字作为名字来
⽤。true和false不是关键字。6个关键字:class implements interface enum extends abstract。
3.boolean,char,byte,short,int,long,float,double。
4.float常量必须⽤F或f为后缀。double常量⽤D或d为后缀,但允许省略后缀。5.⼀维数组名.length。⼆维数组名.length。⼆、选择题
2.下列哪三项是正确的float变量的声明?adf
A. float foo = -1;
B. float foo = ;
C. float foo = 42e1;
D. float foo = ;
E. float foo = ;
F. float foo = 0x0123;
3.下列哪⼀项叙述是正确的?b
A. char型字符在Unicode表中的位置范围是0⾄32767
B. char型字符在Unicode表中的位置范围是0⾄65535
C. char型字符在Unicode表中的位置范围是0⾄65536
D. char型字符在Unicode表中的位置范围是-32768⾄32767
4.以下哪两项是正确的char型变量的声明?be
A. char ch = "R";
B. char ch = '\\'
C. char ch = 'ABCD';
D. char ch = "ABCD";
E. char ch = '\ucafe';
F. char ch = '\u10100'
5.下列程序中哪些【代码】是错误的?2345
public class E {
public static void main(String args[]) {
int x = 8;
byte b = 127; 的值是3。
B. a[1]的值是1。
C. a[0]的值是0。
D. a[]的值等于a[2]的值。
1.C。2.ADF。3.B。4.BE。5.【代码2】【代码3】【代码4】【代码5】。6.B。
三、阅读或调试程序
1.属于操作题,解答略。
2.属于操作题,解答略。
3.属于操作题,解答略。
4.下列程序标注的【代码1】,【代码2】的输出结果是什么?
public class E {
public static void main (String args[ ]){
long[] a = {1,2,3,4};
long[] b = {100,200,300,400,500};
b = a;
"数组b的长度:"+; 列程序标注的【代码1】,【代码2】的输出结果是什么?public class E {
public static void main(String args[]) {
int [] a={10,20,30,40},b[]={{1,2},{4,5,6,7}};
b[0] = a;
b[0][1] = b[1][3];
令数组全部的值为0
public class E {
public static void main(String args[]) {
'你');
'我');
'他');
}
}
2. public class E {
public static void main (String args[ ]) {
char cStart='α',cEnd='ω';
for(char c=cStart;c<=cEnd;c++)
" "+c);
}
}
习题3(第3章)
⼀、问答题
1.关系运算符的运算结果是怎样的数据类型?
2.if语句中的条件表达式的值是否可以是int型?
3.while语句中的条件表达式的值是什么类型?4.switch语句中必须有default选项码?
5.在while语句的循环体中,执⾏break语句的效果是什么?6.可以⽤for语句代替while语句的作⽤吗?
1.boolean
2.不可以
3.boolean
4. 不是必须的
5.结束while语句的执⾏
6.可以
⼆、选择题
1.下列哪个叙述是正确的?a
A. 2+10的结果是double型数据。
B.(int)+的结果是int型数据。
C.'苹'+ '果'的结果是char型数据。
D.(short)10+'a'的结果是short型数据。
2.⽤下列哪个代码替换程序标注的【代码】会导致编译错误?c
A.m-->0 B.m++>0 C.m = 0 D.m>100&&true
public class E {
public static void main (String args[ ]) {
int m=10,n=0;
while(【代码】) {
n++;
}
}
}
3.假设有int x=1;以下哪个代码导致“可能损失精度,到int需要char”这样的编译错误。 c A.short t=12+'a'; B.char c ='a'+1; C.char m ='a'+x; D.byte n ='a'+1;
1.A。 2.C。 3.C。
三、阅读程序
1.下列程序的输出结果是什么?
public class E {
public static void main (String args[ ]) {
char x='你',y='e',z='吃';
if(x>'A'){
y='苹';
z='果';
}
else
y='酸';
z='甜';
","+y+","+z);
}
}
2.下列程序的输出结果是什么?
public class E {
public static void main (String args[ ]) {
char c = '\0';

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。