第一部分JAVA语言概论一、选择题1.下列不属于java语言鲁棒性特点的是:A.java能检查程序在变异和运行时的错误B.java能运行虚拟机实现跨平台C.java自己操纵内存减少了内存出错的可能性D.java还实现了真数组,避免了覆盖数据的可能2.java语言的执行模式是:A.全编译型B.全解释型C.半编译和半解释型D.同脚本语言的解释模式3.下列关于虚拟机说法错误的是:A.虚拟机可以用软件实现B.虚拟机部可以用硬件实现C.字节码是虚拟机的机器码D.虚拟机把代码程序与各操作系统和硬件分开4.java语言是1995年由()公司发布的A.SunB.MicrosoftC.BorlandD.FoxSoftware5.下列不是虚拟机执行过程特点的是A.双线程B.多线程C.动态链接D.异常处理6.java以JVM为基础,最下层是移植接口,由适配器和()组成A.网卡B.JavaosC.Java基本类D.Java应用程序和applet小程序7.java程序的执行过程中用到一套JDK工具,其中javac.exe指A.java语言编译器B.java字节码解释器C.java文档生成器D.java类分解器8.java的API结构中,不属于类库主要包括的核心包的是A.java包B.javaxC.javadoc包D.org扩展包9.每个java的编译单元可包含多个类或界面,但是每个编译单元最多只能有()类或者界面是公共的A.一个B.两个C.四个D.任意多个10.在当前的java实现中,每个编译单元就是一个以()为后缀的文件A.javaB.classC.docD.exe二、填空题1.1991年,SUN公司的JameGosling和BillJoe等人,为电视、控制烤面包机等家用电器的交互操作开发了一个____软件,它是java的前身。2.java是一个网络编程语言,简单易学,利用了____的技术基础,但又独立于硬件结构,具有可移植性、健壮性、安全性、高性能。3.java可以跨平台的原因是____。4.JVM的执行过程有三个特点:多线程,_____,异常处理。5.JAVA程序的安全性体现在多个层次上,在_____,有语法检查;在解释层上,有字节码校验器、测试代码段格式和规则检查,访问权限和类型转换和法性检查,操作数堆栈的上溢或下溢,代码参数类型合法性等;在平台层上,通过配置策略,可设定访问资源域,而无需区分本地或远程。6.JAVA的产品主流操作系统平台是Solaris、_____和Macintosh.7.JAVA系统运行时,通过______机制周期性的释放无用对象所使用的内存,完成对象的清除。8.在JAVA语言中,将后缀名为______的源代码文件编译后形成后缀名为.class的字节码文件。9.JAVA语言的执行模式是半编译和______。10.JAVA类库具有_____的特点,保证了软件的可移植性。11.在编写执行JAVA程序的过程中需要用到一些工具,SUN公司为我们提供了一套JDK工具,它主要包括:javac.exe、java.exe、_____、javap.exe、jkb.exe12.JAVA程序包括源代码(.java文件)、______、由归档工具jar生成的.jar文件、对象状态序列化.ser文件。13.在JAVA语言中,为将源代码翻译成______文件时产生的错误称为编译错误。而将程序在运行中产生的错误称为运行错误。14.JavaApplication应用程序的编写和执行分3步进行:编写源代码、编译源代码、_____。15.每个java应用程序可以包括许多方法,但必须有且只能有一个_____方法。16.JAVA源文件中最多只能有一个_____类,其它类的个数不限。17.JAVA的体系结构中,最下层是移植接口,上面一层是虚拟机,虚拟机的上层是_____和基本API,它们都是具有可扩展性。18.类库主要包括核心JAVA包、_____和org扩展包。19.JAVA解释器采用生成与体系结构无关的______指令的技术,只需安装JAVA运行系统,就可保证JAVA程序可以在网络的任何地方运行。20.JAVA的体系结构中,最下层是_____,由适配器和JAVAOS组成,保证JAVA体系结构可以跨平台。第一部分JAVA语言概论习题答案一选择题1.B2.C3.B4.A5.A6.B7.A8.C9.A10.A二填空题1.Oak2.面向对象3.java虚拟机4.动态连结5.编译层6.Windows7.垃圾回收8.java9.半解释型10.跨平台11.javadoc.exe(或java文档生成器)12.由编译器生成的类(.class文件)13.字节码14.解释执行15.main16.public或公共17.java基本类18.javax19.字节代码20.移植接口第二部分Java语言基础一选择题1.下列java标识符,错误的是()A、_sys_varlB、$changeC、User_nameD、1_file2.下列不属于简单数据类型的是()A、整数类型B、类C、符点数类型D、布尔类型3.下列属于JAVA关键词的是()A、TRUEB、gotoC、floatD、NULL4.下列声明和赋值语句错误的是A、doublew=3.1415;B、Stringstrl=”bye”;C、floatz=6.74567D、booleantruth=true;5.java中,八进制数以______开头。A、0xB、0C、0XD、086.自定义类型转换是由按优先关系从低级数据转换为高级数据,优先次序为()A、char-int-long-float-doubleB、int-long-float-double-charC、long-float-int-double-charD、以上都不对7.在java中,Integer.MAX_VALUE表示A、浮点类型最大值B、整数类型最大值C、长整型最大值D、以上说法都不对8.JAVA中,数据类型值中不可能出现的符号是()A、dB、fC、eD、/9.下列表示单引号的是()A、‘B、\’C、\\\\’D、‘\\10.下列语句片断中,four得值为:()intthree=3;charone=‘1’charfour=(char)(three+one);A、3B、1C、31D、411.下列不属于整型变量的类型是A、byteB、shortC、floatD、long12.int类型整型变量在内存中的位数为A、8B、16C、32D、6413.下列数据类型转换,必须进行强制类型转换的是A、byte→intB、short→longC、float→doubleD、int→char14.java中,用()关键字定义常量A、finalB、#defineC、floatD、const15.关于变量的作用范围,下列说法错误的是A、异常处理参数作用域为整个类B、局部变量作用于声明该变量的方法代码段C、类变量作用于声明该变量的类D、方法参数作用于传递到方法内代码段16.下列属于条件运算符的是A、+B、?:C、&&D、17.下列程序test类中的变量c的最后结果为publicclasstest{publicstaticvoidmain(Stringargs[]){inta=10;intb;intc;if(a50){b=9;}c=b+a;}}A、10B、0C、19D、编译出错18.下列程序片断的执行,说法正确的是publicclasstest{publicstaticvoidmain(Stringargs[]){byteb=100;inti=b;inta=2000;b=a;System.out.println(b);}}A、b的值为100B、b的值为2000C、第六行出错D、第八行出错19.00101010(&)00010111语句的执行结果为A、00000010B、11111111C、00111111D、1100000020.已知i为整形变量,关于一元运算++i和i++,下列说法正确的是A.++i运算将出错B.在任何情况下运行程序结果都一样C.在任何情况下运行程序结果都不一样D.在任何情况下变量i的值都增121.在java中语句:37.2%10的运算结果为A.7.2B.7C.3D.0.222.在java语句中,运算符&&实现A.逻辑或B.逻辑与C.逻辑非D.逻辑相等23.在java语句中,位运算操作数只能为整型或()数据A.实型B.字符型C.布尔型D.字符串型24.00101010(|)00010111语句的执行结果为A.00000000B.11111111C.00111111D.1100000025.~0010101语句的执行结果为A.1101010B.0010101C.11111111D.0000000026.复合语句用()括起来的一段代码。A、小括号()B、大括号{}C、中括号〔〕D、单引号‘’27.下列不属于条件语句关键字的是A、ifB、elseC、swichD、while28.多分支语句switch(表达式){}中,表达式不可以返回哪种类型的值A、整型B、实型C、接口型D、字符型29.下面不属于java条件分支语句结构的是A、if结构B、if-else结构C、if-elseif结构D、if-elseelse机构30.下列方法method()执行,返回值为intmethod(){intnum=10;if(num20)returnnum;num=30;}A、10B、20C、30D、编译出错31.三元条件运算符ex1?ex2:ex3,相当于下面()语句。A、if(ex1)ex2;elseex3;B、if(ex2)ex1;elseex3;C、if(ex1)ex3;elseex2;D、if(ex3)ex2;elseex1;32.java用()来实现goto语句所特有的一些功能。A、breakB、defaultC、continueD、return33.一个循环一般应包括哪几部分内容A、初始化部分B、循环体部分C、迭代部分和终止部分D、以上都是34.关于while和do-while循环,下列说法正确的是A、两种循环除了格式不通外,功能完全相同B、与do-while语句不通的是,while语句的循环至少执行一次C、do-while语句首先计算终止条件,当条件满足时,才去执行循环体中的语句D、以上都不对。35.下列程序输出结果为:publicclasstest{publicstaticvoidmain(Stringargs[]){inta=0;outer:for(inti=0;i2;i++){for(intj=0;j2;j++){if(ji){continueouter;}a++;}}System.out.println(a);}}A、0B、2C、3D、436.下列数组定义及赋值,错误的是A.intintArray[];B.intArray=newint[3];intArray[1]=1;intArray[2]=2;intArray[3]=3;C.inta[]={1,2,3,4,5};D.int[][]=newint[2][];a[0]=newint[3];a[1]=newint[3];37.在java中,字符串由java.lang.String和()定义A、java.lang.StringCharB、java.lang.StringBufferC、java.io.StringCharD、java.io.StringBuffer二、填空题1.在java语言中,boolean型常量只有true和_____两个值。2.标识符是以_____、下划线、美元符号作为首字母的字符串序列。3.下面的语句是声明一个变量并赋值:booleanb1=5!=8;b1的值是______。4.在java程序中,用关键字_____修饰的常量对象创建后就不能再修改了。5.数据类型包括简单数据类型和复合数据类型。复合数据类型又包括类、数组、______。6.八进制整数012表示十进制的_______。7.浮