《Java基础入门》课后习题
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
5、在非静态成员方法中,可以使用关键字_this__访问类的其它非静态成员。
6、当一个对象被当成垃圾从内存中释放时,它的__finalize()____方法会被自动调用。
7、被static关键字修饰的成员变量被称为_静态变量_,它可以被该类所有的实例对象共享。
8、在一个类中,除了可以定义属性、方法,还可以定义类,这样的类被称为_内部类_____。
intx=1;
inty=2;
if(x%2==0){
y++;
}else{
y--;
}
+y);
上面一段程序运行结束时,变量y的值为下列哪一项?A
A、1B、2C、3D、switch语句
四、程序分析题
阅读下面的程序,分析代码是否能够编译通过,如果能编译通过,请列出运行的结果。否则请说明编译失败的原因。
代码一:b=7(编译不通过。int值4和b相加时,由于变量b的类型为byte,取值范围没有int类型大,存不下int类型的值,因此编译不通过)
intx=12;
{
inty=96;
is"+x);
is"+y);
}
y=x;
is"+x);
}
}
代码三:3因为没有break,,所以4以后都执行
publicclassTest03{
publicstaticvoidmain(Stringargs[]){
intx=4,j=0;
switch(x){
case1:
j++;
A、类中定义一个无参的构造方法,并且声明为私有
B、在内部创建一个该类的实例对象,使用静态变量引用该实例对象
2、Java属于以下哪种语言?C
A、机器语言B、汇编语言C、高级语言D、以上都不对
3、下面哪种类型的文件可以在Java虚拟机中运行?D
A、.javaB、.jreC、.exeD、.class
4、安装好JDK后,在其bin目录下有许多exe可执行文件,其中java.exe命令的作用是以下哪一种?B
A、Java文档制作工具B、Java解释器C、Java编译器D、Java启动器
3、什么是方法重载?
方法重载指的是在一个类中可以声明多个同名的方法,而方法中参数的个数或者数据类型不一致。调用这些同名的方法时,JVM会根据实际参数的不同绑定到不同的方法。
六、编程题
请按照题目的要求编写程序并给出运行结果。
1、请编写程序,实现计算“1+3+5+7+…+99”的值。
提示:
1)使用循环语句实现自然数1~99的遍历。
A、类定义时B、创建对象时C、调用对象方法时D、使用对象的变量时
4、下面对于构造方法的描述,正确有哪些?(多选)ABC
A、方法名必须和类名相同
B、方法名的前面没有返回值类型的声明
C、在方法中不能使用return语句返回一个值
D、当定义了带参数的构造方法,系统默认的不带参数的构造方法依然存在
5、使用this调用类的构造方法,下面的说法正确的是?(多选)ACD(ABCD)
6、在逻辑运算符中,运算符___&___和___&&___用于表示逻辑与,__|____和__||____表示逻辑或。
7、若x=2,则表达式(x++)/3的值是__0___。
8、若inta=2;a+=3;执行后,变量a的值为__5____。
9、若int[]a={12,45,34,46,23};,则a[2]=__34____。
9、在Java中,提供了一个_javadoc_____命令,用于将程序中的文档注释提取出来,生成HTML格式的帮助文档。
10、所谓类的封装是指在定义一个类时,将类中的属性私有化,即使用_private_____关键字来修饰。
二、判断题
1、在定义一个类的时候,如果类的成员被private所修饰,该成员不能在类的外部被直接访问。对
3、以下关于变量的说法错误的是?C
A、变量名必须是一个有效的标识符
B、变量在定义时可以没有初始值
C、变量一旦被定义,在程序中的任何位置都可以被访问
D、在程序中,可以将一个byte类型的值赋给一个int类型的变量,不需要特殊声明
4、以下选项中,switch语句判断条件可以接收的数据类型有哪些?(多选)ABCD
case2:
j++;
case3:
j++;
case4:
j++;
case5:
j++;
default:
j++;
}
}
}
代码四:
9
8
7
publicclassTest04{
publicstaticvoidmain(Stringargs[]){
intn=9;
while(n>6){
n--;
}
}
}
五、简答题
1、请列举Java语言中的八种基本数据类型,并说明每种数据类型所占用的空间大小。
5、如果jdk的安装路径为:d:\jdk,若想在命令窗口中任何当前路径下,都可以直接使用javac和java命令,需要将环境变量path设置为以下哪个选项?B
A.d:\jdk;B.d:\jdk\bin;C.d:\jre\bin;D.d:\jre;
三、问答题
1、简述Java的特点。
2、简述JRE与JDK的区别。
提示:使用冒泡排序算法。
第3章面向对象(上)
一、填空题
1、面向对象的三大特征是封装性_、_继承性_____和__多态性____。
2、在Java中,可以使用关键字__new____来创建类的实例对象。
3、定义在类中的变量被称为__成员变量____,定义在方法中的变量被称为局部变量______
4、面向对象程序设计的重点是_类___的设计,__类____是用来创建对象的模板。
publicclassTest01{
publicstaticvoidmain(String[]args){
byteb=3;
b=b+4;
+b);
}
}
代码二:不能,y只在{}有效(编译不通过。这是因为y是在最里层的代码块中定义的一个变量,只有在那个代码)
publicclassTest02{
publicstaticvoidmain(String[]args){
2、简述&&与&的区别并举例说明。
如果使用“&”在表达式之间进行连接,那么无论任何情况,“&”两边的表达式都会参与计算。如果使用“&&”进行连接,当“&&”左边的表达式为false,则不会执行其右边的表达式。例如定义intx=2,y=0;booleanb=x<y&x/2>0表达是会发生被0除异常,因为x/y的表达式执行了。而booleanb=x<y&x/2>0是不会出现这种异常的,因为x<y为false,表达式x/y不会执行
3、Java中的注释可分为三种类型,分别是_单行注释//__、__多行注释_/**/__、文档/注释***/______。
4、Java中的变量可分为两种数据类型,分别是_基本数据类型_____和_引用数据类型_____。
5、在Java中,byte类型数据占____1__个字节,short类型数据占__2____个字节,int类型数据占___4___个字节,long类型数据占____8__个字节。
8、下面哪种写法可以实现访问数组arr的第1个元素A
A、arr[0]B、arr(0)C、arr[1]D、arr(1)
9、以下哪个选项可以正确创建一个长度为3的二维数组?(B)C
A、newint[2][3];B、newint[3][];
C、newint[][3];D、以上答案皆不对
10、请先阅读下面的代码。
7、关于内部类,下面说法正确的是?(多选)ACD(ABCD)
A、成员内部类是外部类的一个成员,可以访问外部类的其它成员
B、外部类可以访问成员内部类的成员
C、方法内部类只能在其定义的当前方法中进行实例化
D、静态内部类中可以定义静态成员,也可以定义非静态成员
8、下面对于单例设计模式的描述,正确的是?(多选)BCD(ABCD)
1、类的定义必须包含在以下哪种符号之间?B
A、方括号[]B、花括号{}C、双引号“ຫໍສະໝຸດ BaiduD、圆括号()
2、下面哪一个是正确的类的声明?DA、publicvoidHH{…}B、publicclassMove(){…}C、publicclassvoidnumber{}D、publicclassCar{…}
3、在以下什么情况下,构造方法会被调用?B
Java语言的八种基本数据类型有:byte字节型,占一个字节。short短整型,占两个字节。int整型,占4个字节。long长整型,占8个字节。float单精度浮点型,占4个字节。double双精度浮点型,占8个字节。char字符型,占两个字节。boolean型,表示逻辑值,有true和false两个值,分别占一个字节。
A、使用this调用构造方法的格式为this([参数1,参数2…])
B、只能在构造方法中使用this调用其它的构造方法
C、使用this调用其它构造方法的语句必须放在第一行
D、不能在一个类的两个构造方法中使用this互相调用
6、下面哪些可以使用static关键字修饰?(多选)AC(ACD)
A、成员变量B、局部变量C、成员方法D、成员内部类
四、编程题
使用记事本编写一个HelloWorld程序,在dos命令行窗口编译运行。请按照题目的要求编写程序并给出运行结果。
第2章Java编程基础
一、填空题
1、Java中的程序代码都必须在一个类中定义,类使用__class____关键字来定义。
2、布尔常量即布尔类型的两个值,分别是_true_____和_flase_____。
5、-5%3的运算结果是2。错
三、选择题
1、以下选项中,哪些属于合法的标识符?(多选)AD
A、Hello_WorldB、classC、123usernameD、username123
2、关于方法重载的描述,以下选项中哪些是正确的?(多选)(AD)ABD
A、方法名必须一致B、返回值类型必须不同
C、参数个数必须一致D、参数的个数或类型不一致
2)在遍历过程中,通过条件判断当前遍历的数是否为奇数,如果是就累加,否则不加。
2、已知函数
x+3(x>0)
y=0(x=0)
x2–1(x<0)
请设计一个方法实现上面的函数,根据传入的值x的不同,返回对应的y值。
提示:
1)定义一个static修饰符修饰的方法,方法接收一个int类型的参数x,返回值为int类型。
2)在方法中使用if…elseif..else语句针对x的值进行三种情况的判断。
3)根据判断结果分别执行不同的表达式,并将结果赋予变量y。
4)在方法的最后返回y的值。
5)在main方法中调用设计好的方法,传入一个int型的值,将方法的返回值打印。
3、请编写程序,实现对数组{25,24,12,76,101,96,28}的排序。
5、path______环境变量用来存储Java的编译和运行工具所在的路径,而_classpath_____环境变量则用来保存保存Java虚拟机要运行的“.class”文件路径。
二、选择题
1、以下选项中,哪些属于JDK工具?(多选)ABCD
A、Java编译器B、Java运行工具C、Java文档生成工具D、Java打包工具
2、Java中的每个类都至少有一个构造方法,一个类中如果没有定义构造方法,系统会自动为这个类创建一个默认的构造方法。对
3、声明构造方法时,不能使用private关键字修饰。错
4、类中static修饰的变量或方法,可以使用类名或对象的引用变量访问。对
5、方法内部类中不能访问外部类的成员变量。错
三、选择题
A、intB、byteC、charD、short
5、假设intx=2,三元表达式x>0x+1:5的运行结果是以下哪一个?C
A、0B、2C、3D、5
6、下面的运算符中,用于执行除法运算是哪个?A
A、/B、\C、%D、*
7、下列语句哪些属于循环语句?(多选)AC
A、for语句B、if语句C、while语句D、switch语句
《Java基础入门》课后习题
第1章Java开发入门
一、填空题
1、Java的三大体系分别是_JavaSE_____、_JavaEE_____、_JavaME_____。
2、Java程序的运行环境简称之为JRE_____。
3、编译Java程序需要使用_javac_____命令。
4、javac.exe和java.exe两个可执行程序存放在JDK安装目录的bin______目录下。
10、若inta[3][2]={{123,345},{34,56},{34,56}},则a[2][1]=__56____。
二、判断题
1、Java语言不区分大小写。错
2、0xC5表示的是一个十六进制整数。对
3、continue语句只用于循环语句中,它的作用是跳出循环。错
4、“/*…*/”中可以嵌套“//”注释,但不能嵌套“/*…*/”注释。对
6、当一个对象被当成垃圾从内存中释放时,它的__finalize()____方法会被自动调用。
7、被static关键字修饰的成员变量被称为_静态变量_,它可以被该类所有的实例对象共享。
8、在一个类中,除了可以定义属性、方法,还可以定义类,这样的类被称为_内部类_____。
intx=1;
inty=2;
if(x%2==0){
y++;
}else{
y--;
}
+y);
上面一段程序运行结束时,变量y的值为下列哪一项?A
A、1B、2C、3D、switch语句
四、程序分析题
阅读下面的程序,分析代码是否能够编译通过,如果能编译通过,请列出运行的结果。否则请说明编译失败的原因。
代码一:b=7(编译不通过。int值4和b相加时,由于变量b的类型为byte,取值范围没有int类型大,存不下int类型的值,因此编译不通过)
intx=12;
{
inty=96;
is"+x);
is"+y);
}
y=x;
is"+x);
}
}
代码三:3因为没有break,,所以4以后都执行
publicclassTest03{
publicstaticvoidmain(Stringargs[]){
intx=4,j=0;
switch(x){
case1:
j++;
A、类中定义一个无参的构造方法,并且声明为私有
B、在内部创建一个该类的实例对象,使用静态变量引用该实例对象
2、Java属于以下哪种语言?C
A、机器语言B、汇编语言C、高级语言D、以上都不对
3、下面哪种类型的文件可以在Java虚拟机中运行?D
A、.javaB、.jreC、.exeD、.class
4、安装好JDK后,在其bin目录下有许多exe可执行文件,其中java.exe命令的作用是以下哪一种?B
A、Java文档制作工具B、Java解释器C、Java编译器D、Java启动器
3、什么是方法重载?
方法重载指的是在一个类中可以声明多个同名的方法,而方法中参数的个数或者数据类型不一致。调用这些同名的方法时,JVM会根据实际参数的不同绑定到不同的方法。
六、编程题
请按照题目的要求编写程序并给出运行结果。
1、请编写程序,实现计算“1+3+5+7+…+99”的值。
提示:
1)使用循环语句实现自然数1~99的遍历。
A、类定义时B、创建对象时C、调用对象方法时D、使用对象的变量时
4、下面对于构造方法的描述,正确有哪些?(多选)ABC
A、方法名必须和类名相同
B、方法名的前面没有返回值类型的声明
C、在方法中不能使用return语句返回一个值
D、当定义了带参数的构造方法,系统默认的不带参数的构造方法依然存在
5、使用this调用类的构造方法,下面的说法正确的是?(多选)ACD(ABCD)
6、在逻辑运算符中,运算符___&___和___&&___用于表示逻辑与,__|____和__||____表示逻辑或。
7、若x=2,则表达式(x++)/3的值是__0___。
8、若inta=2;a+=3;执行后,变量a的值为__5____。
9、若int[]a={12,45,34,46,23};,则a[2]=__34____。
9、在Java中,提供了一个_javadoc_____命令,用于将程序中的文档注释提取出来,生成HTML格式的帮助文档。
10、所谓类的封装是指在定义一个类时,将类中的属性私有化,即使用_private_____关键字来修饰。
二、判断题
1、在定义一个类的时候,如果类的成员被private所修饰,该成员不能在类的外部被直接访问。对
3、以下关于变量的说法错误的是?C
A、变量名必须是一个有效的标识符
B、变量在定义时可以没有初始值
C、变量一旦被定义,在程序中的任何位置都可以被访问
D、在程序中,可以将一个byte类型的值赋给一个int类型的变量,不需要特殊声明
4、以下选项中,switch语句判断条件可以接收的数据类型有哪些?(多选)ABCD
case2:
j++;
case3:
j++;
case4:
j++;
case5:
j++;
default:
j++;
}
}
}
代码四:
9
8
7
publicclassTest04{
publicstaticvoidmain(Stringargs[]){
intn=9;
while(n>6){
n--;
}
}
}
五、简答题
1、请列举Java语言中的八种基本数据类型,并说明每种数据类型所占用的空间大小。
5、如果jdk的安装路径为:d:\jdk,若想在命令窗口中任何当前路径下,都可以直接使用javac和java命令,需要将环境变量path设置为以下哪个选项?B
A.d:\jdk;B.d:\jdk\bin;C.d:\jre\bin;D.d:\jre;
三、问答题
1、简述Java的特点。
2、简述JRE与JDK的区别。
提示:使用冒泡排序算法。
第3章面向对象(上)
一、填空题
1、面向对象的三大特征是封装性_、_继承性_____和__多态性____。
2、在Java中,可以使用关键字__new____来创建类的实例对象。
3、定义在类中的变量被称为__成员变量____,定义在方法中的变量被称为局部变量______
4、面向对象程序设计的重点是_类___的设计,__类____是用来创建对象的模板。
publicclassTest01{
publicstaticvoidmain(String[]args){
byteb=3;
b=b+4;
+b);
}
}
代码二:不能,y只在{}有效(编译不通过。这是因为y是在最里层的代码块中定义的一个变量,只有在那个代码)
publicclassTest02{
publicstaticvoidmain(String[]args){
2、简述&&与&的区别并举例说明。
如果使用“&”在表达式之间进行连接,那么无论任何情况,“&”两边的表达式都会参与计算。如果使用“&&”进行连接,当“&&”左边的表达式为false,则不会执行其右边的表达式。例如定义intx=2,y=0;booleanb=x<y&x/2>0表达是会发生被0除异常,因为x/y的表达式执行了。而booleanb=x<y&x/2>0是不会出现这种异常的,因为x<y为false,表达式x/y不会执行
3、Java中的注释可分为三种类型,分别是_单行注释//__、__多行注释_/**/__、文档/注释***/______。
4、Java中的变量可分为两种数据类型,分别是_基本数据类型_____和_引用数据类型_____。
5、在Java中,byte类型数据占____1__个字节,short类型数据占__2____个字节,int类型数据占___4___个字节,long类型数据占____8__个字节。
8、下面哪种写法可以实现访问数组arr的第1个元素A
A、arr[0]B、arr(0)C、arr[1]D、arr(1)
9、以下哪个选项可以正确创建一个长度为3的二维数组?(B)C
A、newint[2][3];B、newint[3][];
C、newint[][3];D、以上答案皆不对
10、请先阅读下面的代码。
7、关于内部类,下面说法正确的是?(多选)ACD(ABCD)
A、成员内部类是外部类的一个成员,可以访问外部类的其它成员
B、外部类可以访问成员内部类的成员
C、方法内部类只能在其定义的当前方法中进行实例化
D、静态内部类中可以定义静态成员,也可以定义非静态成员
8、下面对于单例设计模式的描述,正确的是?(多选)BCD(ABCD)
1、类的定义必须包含在以下哪种符号之间?B
A、方括号[]B、花括号{}C、双引号“ຫໍສະໝຸດ BaiduD、圆括号()
2、下面哪一个是正确的类的声明?DA、publicvoidHH{…}B、publicclassMove(){…}C、publicclassvoidnumber{}D、publicclassCar{…}
3、在以下什么情况下,构造方法会被调用?B
Java语言的八种基本数据类型有:byte字节型,占一个字节。short短整型,占两个字节。int整型,占4个字节。long长整型,占8个字节。float单精度浮点型,占4个字节。double双精度浮点型,占8个字节。char字符型,占两个字节。boolean型,表示逻辑值,有true和false两个值,分别占一个字节。
A、使用this调用构造方法的格式为this([参数1,参数2…])
B、只能在构造方法中使用this调用其它的构造方法
C、使用this调用其它构造方法的语句必须放在第一行
D、不能在一个类的两个构造方法中使用this互相调用
6、下面哪些可以使用static关键字修饰?(多选)AC(ACD)
A、成员变量B、局部变量C、成员方法D、成员内部类
四、编程题
使用记事本编写一个HelloWorld程序,在dos命令行窗口编译运行。请按照题目的要求编写程序并给出运行结果。
第2章Java编程基础
一、填空题
1、Java中的程序代码都必须在一个类中定义,类使用__class____关键字来定义。
2、布尔常量即布尔类型的两个值,分别是_true_____和_flase_____。
5、-5%3的运算结果是2。错
三、选择题
1、以下选项中,哪些属于合法的标识符?(多选)AD
A、Hello_WorldB、classC、123usernameD、username123
2、关于方法重载的描述,以下选项中哪些是正确的?(多选)(AD)ABD
A、方法名必须一致B、返回值类型必须不同
C、参数个数必须一致D、参数的个数或类型不一致
2)在遍历过程中,通过条件判断当前遍历的数是否为奇数,如果是就累加,否则不加。
2、已知函数
x+3(x>0)
y=0(x=0)
x2–1(x<0)
请设计一个方法实现上面的函数,根据传入的值x的不同,返回对应的y值。
提示:
1)定义一个static修饰符修饰的方法,方法接收一个int类型的参数x,返回值为int类型。
2)在方法中使用if…elseif..else语句针对x的值进行三种情况的判断。
3)根据判断结果分别执行不同的表达式,并将结果赋予变量y。
4)在方法的最后返回y的值。
5)在main方法中调用设计好的方法,传入一个int型的值,将方法的返回值打印。
3、请编写程序,实现对数组{25,24,12,76,101,96,28}的排序。
5、path______环境变量用来存储Java的编译和运行工具所在的路径,而_classpath_____环境变量则用来保存保存Java虚拟机要运行的“.class”文件路径。
二、选择题
1、以下选项中,哪些属于JDK工具?(多选)ABCD
A、Java编译器B、Java运行工具C、Java文档生成工具D、Java打包工具
2、Java中的每个类都至少有一个构造方法,一个类中如果没有定义构造方法,系统会自动为这个类创建一个默认的构造方法。对
3、声明构造方法时,不能使用private关键字修饰。错
4、类中static修饰的变量或方法,可以使用类名或对象的引用变量访问。对
5、方法内部类中不能访问外部类的成员变量。错
三、选择题
A、intB、byteC、charD、short
5、假设intx=2,三元表达式x>0x+1:5的运行结果是以下哪一个?C
A、0B、2C、3D、5
6、下面的运算符中,用于执行除法运算是哪个?A
A、/B、\C、%D、*
7、下列语句哪些属于循环语句?(多选)AC
A、for语句B、if语句C、while语句D、switch语句
《Java基础入门》课后习题
第1章Java开发入门
一、填空题
1、Java的三大体系分别是_JavaSE_____、_JavaEE_____、_JavaME_____。
2、Java程序的运行环境简称之为JRE_____。
3、编译Java程序需要使用_javac_____命令。
4、javac.exe和java.exe两个可执行程序存放在JDK安装目录的bin______目录下。
10、若inta[3][2]={{123,345},{34,56},{34,56}},则a[2][1]=__56____。
二、判断题
1、Java语言不区分大小写。错
2、0xC5表示的是一个十六进制整数。对
3、continue语句只用于循环语句中,它的作用是跳出循环。错
4、“/*…*/”中可以嵌套“//”注释,但不能嵌套“/*…*/”注释。对