1、.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、Ja
2、va 编译器 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,若想在命令窗口中任何当前路径下,都可以直接
3、使用 javac 和java 命令,需要将环境变量 path 设置为以下哪个选项?B.Ad:jdk; Bd :jdkbin; Cd:jrebin; Dd:jre;三、问答题1、简述 Java 的特点。面向对象、跨平台性、健壮性、安全性、可移植性、多线程性、动态性等。2、简述 JRE 与 JDK 的区别。JRE(Java Runtime Environment,Java 运行时环境) ,它相当于操作系统部分,提供了 Java 程序运行时所需要的基本条件和许多 Java 基础类,例如,IO 类、GUI 控件类、网络类等。JRE 是提供给普通用户使用的,如果你只想运行别人开发好的 Java 程序,那
4、么,你的计算机上必须且只需安装JRE。 JDK(Java Development Kit,Java 开发工具包) ,它包含编译工具、解释工具、文档制作工具、打包工具多种与开发相关的工具,是提供给 Java 开发人员使用的。初学者学习和使用 Java 语言时,首先必须下载和安装 JDK。JDK 中已经包含了 JRE 部分,初学者安装 JDK 后不必再去下载和安装 JRE 了。 JDK(Java Development Kit,Java 开发工具包) ,它包含编译工具、解释工具、文档制作工具、打包工具多种与开发相关的工具,是提供给 Java 开发人员使用的。初学者学习和使用 Java 语言时,首先
5、必须下载和安装 JDK。JDK 中已经包含了 JRE 部分,初学者安装 JDK 后不必再去下载和安装 JRE 了。 四、编程题使用记事本编写一个 HelloWorld 程序,在 dos 命令行窗口编译运行。请按照题目的要求编写程序并给出运行结果。public class HelloWorld public static void main(String args) System.out.println(“这是第一个 Java程序!“);.第 2 章 Java 编程基础一、填空题1、Java 中的程序代码都必须在一个类中定义,类使用_class_关键字来定义。2、布尔常量即布尔类型的两个值,分别
6、是_true_和_flase_ 。3、Java 中的注释可分为三种类型,分别是_单行注释/_、_多行注释_/* */_、文档/注释* */_。4、Java 中的变量可分为两种数据类型,分别是_基本数据类型 _和_引用数据类型_。5、在 Java 中,byte 类型数据占_1_个字节,short 类型数据占_2_个字节,int 类型数据占_4_个字节,long 类型数据占 _8_个字节。6、在逻辑运算符中,运算符_ a+=3;执行后,变量 a 的值为_5_。9、若 int a=12,45,34,46,23; ,则 a2= _34_。10、若 int a32=123,345,34,56,34,56
7、,则 a21= _56_。二、判断题1、Java 语言不区分大小写。错2、0xC5 表示的是一个十六进制整数。对3、continue 语句只用于循环语句中,它的作用是跳出循环。错4、 “/*/”中可以嵌套“/”注释,但不能嵌套“/*/”注释。对5、-5%3 的运算结果是 2。错三、选择题1、以下选项中,哪些属于合法的标识符?(多选)AD.A、Hello_World B、class C、123username D、username1232、关于方法重载的描述,以下选项中哪些是正确的?(多选)(AD )ABDA、方法名必须一致 B、返回值类型必须不同 C、参数个数必须一致 D、参数的个数或类型不一
8、致3、以下关于变量的说法错误的是? CA、变量名必须是一个有效的标识符B、变量在定义时可以没有初始值C、变量一旦被定义,在程序中的任何位置都可以被访问D、在程序中,可以将一个 byte 类型的值赋给一个 int 类型的变量,不需要特殊声明4、以下选项中,switch 语句判断条件可以接收的数据类型有哪些? (多选) ABCDA、int B、byte C、char D、short 5、假设 int x = 2,三元表达式 x0?x+1:5 的运行结果是以下哪一个? CA、0 B、2 C、3 D、56、下面的运算符中,用于执行除法运算是哪个? AA、/ B、 C、% D、*7、下列语句哪些属于循环
9、语句?(多选) ACA、for 语句 B、 if 语句 C、while 语句 D、switch 语句8、下面哪种写法可以实现访问数组 arr 的第 1 个元素?A A、arr0 B、arr(0) C、arr1 D、arr(1)9、以下哪个选项可以正确创建一个长度为 3 的二维数组?(B)CA、 new int 23; B、 new int3;C、 new int3; D、 以上答案皆不对.10、请先阅读下面的代码。 int x = 1;int y = 2;if (x % 2 = 0) y+; else y-;System.out.println(“y=“ + y);上面一段程序运行结束时,变量
10、 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 只在有效(编译
11、不通过。这是因为 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(Strin
12、g 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
13、字节型,占一个字节。short 短整型,占两个字节。int 整型,.占 4 个字节。long 长整型,占 8 个字节。float 单精度浮点型,占 4 个字节。double 双精度浮点型,占 8个字节。char 字符型,占两个字节。boolean 型,表示逻辑值,有 true 和 false 两个值,分别占一个字节。2、简述 boolean b = x 0 表达是会发生被 0 除异常,因为 x / y 的表达式执行了。而 boolean b = x 0 是不会出现这种异常的,因为 x 0 )y = 0 ( x = 0 )x2 1 ( x 0 )请设计一个方法实现上面的函数,根据传入的值 x 的
14、不同,返回对应的 y 值。提示:1) 定义一个 static 修饰符修饰的方法,方法接收一个 int 类型的参数 x,返回值为 int 类型。2) 在方法中使用 ifelse if.else 语句针对 x 的值进行三种情况的判断。3) 根据判断结果分别执行不同的表达式,并将结果赋予变量 y。4) 在方法的最后返回 y 的值。.5) 在 main 方法中调用设计好的方法,传入一个 int 型的值,将方法的返回值打印。3、请编写程序,实现对数组25,24,12,76,101,96,28 的排序。提示:使用冒泡排序算法。第 3 章 面向对象(上)一、填空题1、 面向对象的三大特征是封装性_、_继承性
15、_和_多态性_。2、 在 Java 中,可以使用关键字_new_来创建类的实例对象。3、 定义在类中的变量被称为_成员变量_,定义在方法中的变量被称为局部变量_4、 面向对象程序设计的重点是_类_的设计,_类_是用来创建对象的模板。5、 在非静态成员方法中,可以使用关键字_this_访问类的其它非静态成员。6、 当一个对象被当成垃圾从内存中释放时,它的_finalize()_方法会被自动调用。7、 被 static 关键字修饰的成员变量被称为_静态变量_,它可以被该类所有的实例对象共享。8、 在一个类中,除了可以定义属性、方法,还可以定义类,这样的类被称为_内部类_。9、在 Java 中,提供
16、了一个_javadoc_命令,用于将程序中的文档注释提取出来,生成 HTML 格式的帮助文档。10、所谓类的封装是指在定义一个类时,将类中的属性私有化,即使用_private_关键字来修饰。二、判断题1、在定义一个类的时候,如果类的成员被 private 所修饰,该成员不能在类的外部被直接访问。对2、Java 中的每个类都至少有一个构造方法,一个类中如果没有定义构造方法,系统会自动为这个类创建一个默认的构造方法。对3、声明构造方法时,不能使用 private 关键字修饰。错4、类中 static 修饰的变量或方法,可以使用类名或对象的引用变量访问。对.5、方法内部类中不能访问外部类的成员变量。
17、错三、选择题1、类的定义必须包含在以下哪种符号之间?BA、方括号 B、花括号 C、双引号“” D、圆括号()2、下面哪一个是正确的类的声明? DA、 public void HH B、 public class Move()C 、 public class void number D、 public class Car3、在以下什么情况下,构造方法会被调用?BA、 类定义时 B、 创建对象时 C、 调用对象方法时 D、 使用对象的变量时4、下面对于构造方法的描述,正确有哪些?(多选)ABCA、方法名必须和类名相同B、方法名的前面没有返回值类型的声明C、在方法中不能使用 return 语句返回一
18、个值D、当定义了带参数的构造方法,系统默认的不带参数的构造方法依然存在5、使用 this 调用类的构造方法,下面的说法正确的是?(多选)ACD (ABCD)A、使用 this 调用构造方法的格式为 this(参数 1,参数 2)B、只能在构造方法中使用 this 调用其它的构造方法C、使用 this 调用其它构造方法的语句必须放在第一行D、不能在一个类的两个构造方法中使用 this 互相调用6、下面哪些可以使用 static 关键字修饰?( 多选)AC(ACD)A、 成员变量 B、局部变量 C、成员方法 D、成员内部类7、关于内部类,下面说法正确的是?(多选)ACD(ABCD).A、成员内部类
19、是外部类的一个成员,可以访问外部类的其它成员B、外部类可以访问成员内部类的成员C、方法内部类只能在其定义的当前方法中进行实例化D、静态内部类中可以定义静态成员,也可以定义非静态成员8、下面对于单例设计模式的描述,正确的是?(多选)BCD(ABCD )A、类中定义一个无参的构造方法,并且声明为私有B、在内部创建一个该类的实例对象,使用静态变量引用该实例对象C、使用 private 修饰静态变量,禁止外界直接访问D、定义静态方法返回该类实例9、请先阅读下面的代码 Dpublic class Test public Test()System.out.println(“构造方法一被调用了“);public Test(int x)this();System.out.println(“构造方法二被调用了“);public Test(boolean b)this(1);System.out.println(“构造方法三被调用了“);public static void main(String args) Test test = new Test(true);上面程序的运行结果为下列哪一项?A、构造方法一被调用了 B、构造方法二被调用了C、构造方法三被调用了 D、以上三个选项之和