
《Java基础入门》课后习题及答案(完整版).doc
54页《Java基础入门》课后习题第1章 Java开发入门一、填空题1、Java的三大体系分别是_JavaSE_____、_JavaEE_____、_JavaME_____2、Java程序的运行环境简称之为JRE_____3、编译Java程序需要使用_javac_____命令4、javac.exe和java.exe两个可执行程序存放在JDK安装目录的bin______目录下5、path______环境变量用来存储Java的编译和运行工具所在的路径,而_classpath_____环境变量则用来保存保存Java虚拟机要运行的“.class”文件路径二、选择题 1、以下选项中,哪些属于JDK工具?(多选)ABCDA、Java编译器 B、Java运行工具 C、Java文档生成工具 D、Java打包工具2、Java属于以下哪种语言?CA、机器语言 B、 汇编语言 C、高级语言 D、以上都不对3、下面哪种类型的文件可以在Java虚拟机中运行?DA、.java B、.jre C、.exe D、.class4、安装好JDK后,在其bin目录下有许多exe可执行文件,其中java.exe命令的作用是以下哪一种? BA、Java文档制作工具 B、Java解释器 C、Java编译器 D、Java启动器 5、如果jdk的安装路径为:d:\jdk,若想在命令窗口中任何当前路径下,都可以直接使用javac和java命令,需要将环境变量path设置为以下哪个选项?BA.d:\jdk; B.d :\jdk\bin; C.d:\jre\bin; D.d:\jre;三、问答题1、简述Java的特点。
面向对象、跨平台性、健壮性、安全性、可移植性、多线程性、动态性等2、简述JRE与JDK的区别 JRE(Java Runtime Environment,Java运行时环境),它相当于操作系统部分,提供了Java程序运行时所需要的基本条件和许多Java基础类,例如,IO类、GUI控件类、网络类等JRE是提供给普通用户使用的,如果你只想运行别人开发好的Java程序,那么,你的计算机上必须且只需安装JRE JDK(Java Development Kit,Java开发工具包),它包含编译工具、解释工具、文档制作工具、打包工具多种与开发相关的工具,是提供给Java开发人员使用的初学者学习和使用Java语言时,首先必须下载和安装JDKJDK中已经包含了JRE部分,初学者安装JDK后不必再去下载和安装JRE了 JDK(Java Development Kit,Java开发工具包),它包含编译工具、解释工具、文档制作工具、打包工具多种与开发相关的工具,是提供给Java开发人员使用的初学者学习和使用Java语言时,首先必须下载和安装JDKJDK中已经包含了JRE部分,初学者安装JDK后不必再去下载和安装JRE了。
四、编程题使用记事本编写一个HelloWorld程序,在dos命令行窗口编译运行请按照题目的要求编写程序并给出运行结果public class HelloWorld { public static void main(String[] args) { System.out.println("这是第一个Java程序!"); }}第2章 Java编程基础一、填空题1、Java中的程序代码都必须在一个类中定义,类使用__class____关键字来定义2、布尔常量即布尔类型的两个值,分别是_true_____和_flase_____3、Java中的注释可分为三种类型,分别是_单行注释//__、__多行注释_/* */__、文档/注释** */______4、Java中的变量可分为两种数据类型,分别是_基本数据类型_____和_引用数据类型_____5、在Java中,byte类型数据占____1__个字节,short类型数据占__2____个字节,int类型数据占___4___个字节,long类型数据占____8__个字节6、在逻辑运算符中,运算符___&___和___&&___用于表示逻辑与,__|____和__||____表示逻辑或。
7、若x = 2,则表达式 ( x + + )/3 的值是__0___8、若int a =2; a+=3;执行后,变量a的值为__5____9、若int []a={12,45,34,46,23}; ,则a[2]= __34____10、若int a[3][2]={{123,345},{34,56},{34,56}},则a[2][1]= __56____二、判断题1、Java语言不区分大小写错2、0xC5表示的是一个十六进制整数对3、continue 语句只用于循环语句中,它的作用是跳出循环错4、“/*…*/”中可以嵌套“//”注释,但不能嵌套“/*…*/”注释对5、-5%3的运算结果是2错三、选择题1、以下选项中,哪些属于合法的标识符?(多选)ADA、Hello_World B、class C、123username D、username1232、关于方法重载的描述,以下选项中哪些是正确的?(多选)(AD)ABD A、方法名必须一致 B、返回值类型必须不同 C、参数个数必须一致 D、参数的个数或类型不一致3、以下关于变量的说法错误的是? CA、变量名必须是一个有效的标识符B、变量在定义时可以没有初始值C、变量一旦被定义,在程序中的任何位置都可以被访问D、在程序中,可以将一个byte类型的值赋给一个int类型的变量,不需要特殊声明4、以下选项中,switch语句判断条件可以接收的数据类型有哪些? (多选) ABCDA、int B、byte C、char D、short 5、假设int x = 2,三元表达式 x>0?x+1:5 的运行结果是以下哪一个? C A、0 B、2 C、3 D、56、下面的运算符中,用于执行除法运算是哪个? AA、/ B、\ C、% D、*7、下列语句哪些属于循环语句?(多选) AC A、for语句 B、if语句 C、while语句 D、switch语句8、下面哪种写法可以实现访问数组arr的第1个元素?A A、arr[0] B、arr(0) C、arr[1] D、arr(1)9、以下哪个选项可以正确创建一个长度为3的二维数组?(B)CA、 new int [2][3]; B、 new int[3][];C、 new int[][3]; D、 以上答案皆不对10、请先阅读下面的代码。
int x = 1;int y = 2;if (x % 2 == 0) { y++;} else { y--;}System.out.println("y=" + y); 上面一段程序运行结束时,变量y的值为下列哪一项?AA、1 B、2 C、3 D、switch语句四、程序分析题阅读下面的程序,分析代码是否能够编译通过,如果能编译通过,请列出运行的结果否则请说明编译失败的原因代码一:b=7(编译不通过int值4和b相加时,由于变量b的类型为byte,取值范围没有int类型大,存不下int类型的值,因此编译不通过)public class Test01 { public static void main(String[] args) { byte b = 3; b = b + 4; System.out.println("b=" + b); }}代码二:不能,y只在{}有效(编译不通过这是因为y是在最里层的代码块中定义的一个变量,只有在那个代码)public class Test02 { public static void main(String[] args){ int x = 12; { int y = 96; System.out.println("x is " + x); System.out.println("y is " + y); } y = x; System.out.println("x is " + x); }}代码三:3 因为没有break,,所以4以后都执行public class Test03 { public static void main(String args[]) { int x = 4, j = 0; switch (x) { case 1: j++; case 2: j++; case 3: j++; case 4: j++; case 5: j++; default: j++; } System.out.println(j); }}代码四:987public class Test04 { public static void main(String args[]) { int n = 9; while (n > 6) { System.out.println(n); n--; } }}五、简答题1、请列举Java语言中的八种基本数据类型,并说明每种数据类型所占用的空间大小。
Java语言的八种基本数据类型有:byte字节型,占一个字节short短整型,占两个字节int整型,占4个字节long长整型,占8个字节float单精度浮点型,占4个字节double双精度浮点型,占8个字节char字符型,占两个字节boolean型,表示逻辑值,有true和false两个值,分别占一个字节2、 简述&&与&的区别并举例说明如果使用“&”在表达式之间进行连接,那么无论任何情况,“&”两边的表达式都会参与计算如果使用“&&”进行连接,当“&&”左边的表达式为false,则不会执行其右边的表达式例如定义int x = 2,y = 0; boolean b = x < y & x / 2 > 0表达是会发生被0除异常,因为x / y的表达式执行了而boolean b = x < y & x / 2 > 0是不会出现这种异常的,因为x < y为false,表达式x / y不会执行3、 什么是方法重载?方法重载指的是在一个类中可以声明多个同名的方法,而方法中参数的个数或者数据类型不一致调用这些同名的方法时,JVM会根据实际参数的不同绑定到不同的方法六、编程题请按照题目的要求编写程序并给出运行结果。
1、请编写程序,实现计算“1+3+5+7+…+99”的值 提示:1) 使用循环语句实现自然数1~99的遍历2) 在遍历过程中,通过条件判断当前遍历的数是否为奇数,如果是就累加,否则不加2、已知函数 x + 3 ( x > 0 ) 。












