Java习题附答案
第一章练习题(Java入门)
1.下列哪项不是JDK所包含的内容?(选一项)C 红色代表正确答案
A.Java编程语言
B.工具及工具的API
C.Java EE扩展API
D.Java平台虚拟机
2.下列关于JDK、JRE和JVM的描述。哪项正确?D
A.JDK中包含了JRE,JVM中包含了JRE
B.JRE中包含了JDK,JDK中包含了JVM
C.JRE中包含了JDK,JVM中包含了JRE
D.JDK中包含了JRE,JRE中包含了JVM
3.下列哪个工具可以编译java源文件?A
A.javac
B.jdb
C.javadoc
D.junit
4.JDK工具javadoc的作用是哪项?A
A.生成Java文档
B.编译Java源文件
C.执行Java类文件
D.测试Java代码
5.以下哪些包是Java标准库中常用的包?(选三项)ACD
A.java.lang
B.javax.servlet .http
C.j ava. io
D.java.sql
6.使用JDK工具生成的Java文档的文件格式是?D
A.XML格式
B.自定义格式
c.二进制格式
D.HTML格式
7.以下关于JVM的叙述,哪项正确?(选两项)AC
A.JVM运行于操作系统之上,它依赖于操作系统
B.JVM运行于操作系统之上,它与操作系统无关
C.JVM支持Java程序运行,它能够直接运行Java字节码文件
D.JVM支持Java程序运行,它能够直接运行Java源代码文件
8.以下关于支持Java运行平台的叙述,哪项错误?C
A.Java可在Solaris平台上运行
B.Java可在Windows平台上运行
C.Java语言与平台无关。Java程序的运行结果依赖于操作系统
D.Java语言与平台无关。Java程序的运行结果与操作系统无关
9.以下关于Applet和Java程序之间关系的叙述,哪项错误?B
A. -个Applet就是一段Java程序
B.Applet是一种特殊的Java程序,它需要运行在Web服务器上
C.Applet是一种特殊的Java程序,它需要运行在Web浏览器上
D.Applet是一种Java SE平台的应用程序
10.以下关于Java HotSpot的描述,哪两项错误?(选两项) A D
A.JavaHotSpot是一种热编译技术,在编译Java源程序时会被使用
B.Java HotSpot是一种热编译技术,在运行Java代码时会被使用
C.Java HotSpot是一种热编译技术,它只对程序的部分字节码进行优化
D.Java HotSpot是一种热编译技术,它会对程序的全部字节码进行优化
11.环境变量PATH中含有多个路径时,路径和路径之间可以用哪项来隔开?A
A.:
B. ,
C.*
D:|
12.CLASSPATH中的“.”的含义是哪项?B
A.省略号
B.当前目录
C.所有目录
D.上级目录
13.JVM在执行一个Java类时,大致采用以下过程?D
A.执行类中的代码一>装载类一>校验类
B.校验类一>装载类一>执行类中的代码
C.装载类一>执行类中的代码一>校验类
D.装载类一>校验类一>执行类中的代码
14.当运行—个Java程序时,传递参数的格式是哪项?C
A. java类名参数1,参数2
B. javac类名参数1参数2
C. java类名参数1参数2
D. java类名参数1+参数2
15.以下关于Java文件名的叙述,正确的有?(选两项)A B
A.Java源文件的扩展名应为.java
B.Java源文件的文件名应与文件中的类名一致
C. Java字节码文件的扩展名应为.java
D. 一个Java源文件中只能包含一个Java类
第二章练习题(数据类型和运算符)
1.下列哪项不属于Java语言的基本数据类型?B
A.int
B.String
C.double
D.boolean
2.下列哪项不是int类型的字面量?A
A.\u03A6
B.077
C.OxABBC
D.20
3.下列哪项不是有效的标识符?B
A.userName
B.2test
C.$change
D._password
4.下列哪项是Java语言中所规定的注释样式?(选三项)ACD
A.//单行注释
B.--单行注释
C. /*
*单行或多行注释
*/
D. /kk
*文档注释
*/
5.下列哪项不是Java语言的关键字?B
A.goto
B.sizeof
C.instanceof
D.volatile
6.现有如下五个声明:D
Linel: int a_really_really_really_long_variable_name=5 ;
Line2: int _hi=6;
Line3: int big=Integer. getlnteger("7”);
Line4:int $dollars=8;
line5: int %opercent=9;
哪行无法通过编译?
A.Line1
B.Line3
C. Line4
D. Line5
7.现有:D
1. class Top {
2. static int x=l;
3. public Top (inty) { x*=3; }
4. }
5. class Middle extends Top {
6. public Middle() {x+=1; )
7. public static void main (String [] args) {
8. Middle m = new Middle();
9. System. out .println (x);
IO. }
II. }
结果为:
A.1
B. 2
C.3
D.编译失败
8.现有:
1. class Passer f
2. static final int X=5;
3.public static void main (String [] args) {
4. new Passer().go (x);
5.System. out .print (x);
6, )
7. void go (int x) {
8.System. out .print(x++);
9. }
10. }
结果是什么?A
A.55
B.56
C.65
D.66
9.现有:
1. class Wrench f
2.public static void main(String [] args) {
3.Wrench w=new Wrench(); Wrench w2=new Wrench();
4. w2=go (w, w2);
5.System.out.print (w2==w);
6. }
7.static Wrench go (Wrench wrl, Wrench wr2) {
8.Wrench wr3=wrl; wrl=wr2; wr2=wr3;
9. return wr3;
10. }
11. }
结果是什么?B
A. false
B. true
C.编译失败
D.运行的时候有异常抛出
10.现有:
5. class Wrench2 {
6. int size;
7.public static void main(String [] args) {
8.Wrench2 w=new Wrench2();
9. w.size=II;
IO. Wrench2 w2=go(w, w.size);
II. System. out .print (w2. size);
12. )
13. static Wrench2 go(Wrench2 wr. int s) {
14. S=12;
15。 return wr;
16. }
17. }
结果为:A
A. 11
B. 12
c.编译失败。
D.运行时异常被抛出
11.现有:
class Test2 f
public static void main (String [] args) {
short a,b,C;
a=l;
b=2;
C=a+b;
a+=2:
}
}
以上代码中,哪一句是错误的?B
A.a=1:
B.C=a+b;
C. a+=2;
D. short a,b,C;
12.表达式:1-2/5+2 'k5的结果是哪项?D
A. 10.6
B. 9.8
C. 9
13.现有代码片段:A
String s="123";
String sl=S+456;
请问sl的结果是哪项?
A. 123456
B. 579
C.编译错误
D.运行时抛出异常
14.基本数据类型float的包裹类是哪项?C
A. Integer
B. Double
C. Float
D. Character
15.现有:
1. class Test4 {
2. public static void main (String [] args) {
3. boolean X=true;
4. boolean y=false;
5. short Z=42;
6.
7. if((z++==42) && (y=true))z++;
8.if((x=false) || (++z==45)) z++;
9.
10. System. out.println(¨z=”+z);
II. }
12. }
结果为:D
A. Z=42
B. z=44
C. Z= 45
D. z= 46
第三章练习题(流程控制与数组)
1.现有:
class TestApp{
public static void main (String[] args){
for (int i=0; i<lO;i++){
if(i==3)
break;
System. out .print (i);
}
}
}
程序运行后的输出是哪项?C
A.0123
B.012456789
C. 0123456789
D. 012
2.程序:
class TestApp{
public static void main (String[] args){
int x=6;
if (x>l)
System. out. println("x>l");
else if (x>5)
System. out .println("x>5");
else if (x<10)
System. out. println("x<lO");
else if (x<29)
System. out .println( "x<29");
else
System. out.println(“以上都不是”);
}
}
上述程序运行后的结果是哪项?D
A.x>5
B.x>l
C. x<10
D.x<29
3.现有:
class TestApp{
public static void main (String[] args){
int [5] myarray={ 10, 11, 12, 13, 14);
int sum=0;
for (int x : myarray)
sum+=x;
System. out. println( "sum= "+sum);
}
}
上述程序运行后的结果是哪项?A
A. sum=10
B. sum=70
C. sum=60
D. 运行时抛出异常
4.下列有关数组的声明中,正确的是哪项?(选两项)AD
A. int s[10];
B. int[10] s;
C. int[5] s={l,2,3,4,5};
D. int s[];
5.已知数组array,其最后一个元素的下标是?ACD
A. array. size
B. array. length-l
C. array. size-l
D. array.length
6.程序:
class TestApp{
public static void main (String[] args){
int X=5:
switch (x){
case l:
case 2:
case 3:
System. out.println(“一季度”);
break;
case 4:
case 5:
case 6:
System. out.println(“二季度”);
break;
default:
System. out.println(“三季度以上”);
break;
)
}
)
上述程序运行后的结果是哪项?D
A. 一季度
B.二季度
c.三季度以上
D.无输出
7.为将数组myArray的长度由3改为6,现采取以下编码:
int[]myArray=new int [3];
myArray=new int[6];
代码执行后,以下叙述哪项是正确的?AC
A.数组myArray的长度已由3改为6,其中前3个元素的值不变,后3个元素
的值为空。
B.数组myArray的长度已由3改为6,其中前3个元素的值不变,后3个元素
需再经过初始化后才能使用。
C.数组myArray的长度没有变化。
D.数组myArray的长度已由3改为6,原来3个元素的值全部丢失。
8.现有:
1. class Ifs {
2.public static void main (String [] args) {
3.boolean state=false;
4. int i=2;
5.if( (++i>2) && (state=true))
6.i++;
7.if( (++i>4) l l (state=false))
8.i++;
9.System.out .println (i);
10. }
11. }
结果为:C
A. 6
B. 5
C. 4
D.编译失败
9.现有:
3. public class Tester {
4.public static void main (String[] args) {
5. intx-5;
6. Integer xl=x; Integer x2=x;
7.int x3=new Integer(5);
8. system..ut.print(x1.equals(x));
9. system..ut.print(xl==x);
lu. system..ut.print(x2.equals(xl));
11. system..ut.print(x2==xl);
12- system..ut.print(x2==x3);
13- system..ut.print(x2.equals(x3));
“ l4.}
15. }
结果为:B
A.编译失败
B. falsefalsetruetruetruetrue
C. truetruetruetruetruetrue
D. falsefalsetruetruetruefalse
E. truefalsetruefalsefalsetrue
F.运行时异常被抛出
10.现有:
1. class Rectangle {
2' public static V.id main(string [] args) {
3. int[]x=(1,2,3);
4. x[1]= (x[1]>1) ?x[2]: O;
5. System.out.println(x[1]);
6. }
7. }
结果为:AD
A.3
B.2
C.1
D.0
11.现有:
1.class Output (
2.public static void main (String[] args) {
3. int i=5:
4.System.out.print( "4"+i+"");
5.System.out.print (i+5+"7");
6.System.out.println (i+"8");
7. }
8. }
结果为:A
A. 9 9722
B. 9 55758
C. 45 10758
D. 45 9722
12.以下哪种初始化数组的方式是错误的?B
A. String[]names={"zhang", "wang", "li");
B. String names[] =new String [3];
names [O] ="zhang"; names [1] ="wang"; names [2] ="li";
C. String[3] names={"zhang", "wang", "li"};
D. 以上皆正确
13.现有:
1. class WhileTests {
2.public static void main (String [] args) {
3. int X=5;
4. while (++x<4) {
5.--x;
6. }
7.System.out.println( "x="+x);
8. }
9. }
结果是什么?D
A.X=6
B. X=5
C.X=2
D.编译失败
14.现有:
1. class Test2 f
2.public static void main (String [] args) {
3. boolean X= true;
4. boolean y=false;
5. short Z=20;
6.
7.if((x==true) && (y=true)) z++;
8. if((y==true) || (++z==22)) z++;
9.
10. System. out .println( "z="+z);
11. }
12. }
结果是什么?C
A.Z=21
B. z=22
C. z=23
D. Z= 24
15.现有:
1. class Foo {
2.public static void main (String [] args) {
3. int x=O;
4. int y=4;
5.for (int z=0; z<3; Z++; X++) {
6. if(x>1&++y<10)
7. y++;
8. }
9.System. out .println (y);
10. }
11. }
结果是什么?AB
A.7
B.8
C.10
D.12
Java习题附答案的更多相关文章
- HTML习题附答案
第一章 1.HTML指的是( A ). A超文本标记语言(Hyper Text Markup Language) B家庭工具标记语言(Home Tool Markup Language) C超 ...
- Java研发岗位面试归类B(附答案)
本文承接上文:Java研发岗位面试归类A(附答案): http://www.cnblogs.com/wp5719/p/5870243.html 答案自己网上找的,如有纰漏或错误,烦请指教. 七.数据库 ...
- 100道Java基础面试题收集整理(附答案)
不积跬步无以至千里,这里会不断收集和更新Java基础相关的面试题,目前已收集100题. 1.什么是B/S架构?什么是C/S架构 B/S(Browser/Server),浏览器/服务器程序 C/S(Cl ...
- 200个最常见的JAVA面试问题(附答案)
本文内容: 20个最常见的JAVA面试问题(附答案) 13个单例模式JAVA面试问题(附答案) 说说JVM和垃圾收集是如何工作的(附答案) 说说如何避免JAVA线程死锁(附答案) Java中HashS ...
- 挑战10个最难的Java面试题(附答案)【下】【华为云技术分享】
版权声明:本文为博主原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明. 本文链接:https://blog.csdn.net/devcloud/article/detai ...
- 挑战10个最难的Java面试题(附答案)【上】【华为云技术分享】
版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明.本文链接:https://blog.csdn.net/devcloud/article/deta ...
- 挑战10个最难的Java面试题(附答案)【上】
欢迎添加华为云小助手微信(微信号:HWCloud002 或 HWCloud003),验证通过后,输入关键字"加群",加入华为云线上技术讨论群:输入关键字"最新活动&quo ...
- 挑战10个最难的Java面试题(附答案)【下】
查看挑战10个最难的Java面试题(附答案)[上] 在本文中,我们将从初学者和高级别进行提问, 这对新手和具有多年 Java 开发经验的高级开发人员同样有益. 关于Java序列化的10个面试问题 大多 ...
- for循环遍历json(附习题及答案)
三种方法 var mapColumn = { "vdoing" : "访问深度", "_visitorNumber": "访问量& ...
随机推荐
- 原创|高逼格企业级MySQL数据库备份方案,原来是这样....
很多人,这里说的是运维工程师们,一提到写某某方案,很是头疼.不是上某度一统搜索,就是同样一句话在N个群全部群发一遍:“有没有某某方案,可以共享一下的吗??求助,各位大佬们”,估计十有八九,全部石沉大海 ...
- HDU3478 【判奇环/二分图的性质】
题意: 给你一幅图,给你一个起点,然后问你存不存在一个时刻,所有点可以在那个时刻到达. 思路: 这幅图首先是联通的: 如果出现奇数环,则满足在某一时刻都可能到达: 然后判断奇数环用二分图性质搞也是神奇 ...
- POJ3463【次短路】
转自:http://www.cnblogs.com/jackge/archive/2013/04/29/3051273.html 算法:最短路和次短路.Dijkstra算法.采用邻接表建图. 总结:不 ...
- Peptidomics analysis of milk protein-derived peptides
released over time in the preterm infant stomach
(文献分享一组-陈凌云)
题目:Peptidomics analysis of milk protein-derived peptides released over time in the preterm infant st ...
- ACM2015沈阳:B-Bazinga
2019.1.24 数据范围:\(n<=500,m<=2000\) 这个题最裸的暴力就是对于每个字符串,都去验证一次,时间复杂度\(O(n^2m)\) 我们发现,如果对于字符串\(i\), ...
- Java - Class版本号和UnsupportedClassVersionError
问题分析 Java是向下兼容的,每一个jdk版本都有对应的class版本号(major + minor version numbers):如果用低版本的jvm去加载高版本jdk编译的类,就会报错:ja ...
- shell学习(7)- linux权限管理及修改权限命令chmod
文件系统权限基本介绍 1.文件基本权限 总共10个字符,可以分为四组, 第一组,就一个字符-,代表是文件类型,是一个常规文件,还有其他的类型如下所示 d--目录 l--符号链接,软连接 c--字符专门 ...
- aws cli command line interface的安装与使用
安装 在centos中安装aws cli,安装依赖python,先装好python,然后按下述命令执行 yum install wget wget https://bootstrap.pypa.io/ ...
- SRE思想
1 规模效应 业务越庞大,服务器就越多,服务越多,就越需要拆分成分布式架构.架构越复杂,对运维的能力要求就越高.出错的概率就越大,运维的工作量就越大.因此就要更多开发提升效率的工具. 而在小企业,业务 ...
- JMETER通过java代码通过代码/ JMETER API实现示例进行负载测试
本教程试图解释Jmeter的基本设计,功能和用法,Jmeter是用于在应用程序上执行负载测试的优秀工具.通过使用jmeter GUI,我们可以根据我们的要求为请求创建测试样本并执行具有多个用户负载的样 ...