Java-2实用教程(第5版)习题解答
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
习题解答
习题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\rt.jar;.;
5. java和class
6. java Bird
7.独行风格(大括号独占行)和行尾风格(左大扩号在上一行行尾,右大括号独占行)
二、选择题
1.B。2.D。
1.下列哪个是JDK提供的编译器?
A) java.exe
B) javac.exe
C) javap.exe
D) javaw.exe
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() {
System.out.print("您好,很高兴认识您");
System.out.println(" nice to meet you");
}
}
class Xiti {
public static void main(String args[]) {
Person zhang = new Person();
zhang.speakHello();
}
}
(a)上述源文件的名字是什么?
(b)编译上述源文件将生成几个字节码文件?这些字节码文件的名字都是什么?
(c)在命令行执行java Person得到怎样的错误提示?执行java xiti得到怎样的错误提示?执行java Xiti.class得到怎样的错误提示?执行java Xiti得到怎样的输出结果?
1.(a)Person.java。(b)两个字节码,分别是Person.class和Xiti.class。(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 = 1.0;
C. float foo = 42e1;
D. float foo = 2.02f;
E. float foo = 3.03d;
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; //【代码1】
b = x; //【代码2】
x = 12L; //【代码3】
long y=8.0; //【代码4】
float z=6.89 ; //【代码5】
}
}