《JAVA语言程序设计》期末考试试题及答案(题库超级大全-应考必备)Java考试题必从中出_第1页
《JAVA语言程序设计》期末考试试题及答案(题库超级大全-应考必备)Java考试题必从中出_第2页
《JAVA语言程序设计》期末考试试题及答案(题库超级大全-应考必备)Java考试题必从中出_第3页
《JAVA语言程序设计》期末考试试题及答案(题库超级大全-应考必备)Java考试题必从中出_第4页
《JAVA语言程序设计》期末考试试题及答案(题库超级大全-应考必备)Java考试题必从中出_第5页
已阅读5页,还剩48页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

JAVA语言程序设计考试试题及部分答案一、单选题:(每题1分)下列各题A)、B)、C)、D)四个选项中,只有一个选项是正确的,请将正确选项的标记写在题干后的括号内。下列语句序列执行后,k的值是(B)ointm=3,n=6,k=0;while((m++)<(~n))++k;0B)1C)2D)3设i、j为int型变量名,a为int型数组名,以下选项中,正确的赋值语句是(B)。i=i+2 B)a[0]=7;C)i++——j; D)a(0)=66;Java语言的类间的继承关系是(B)。多重的B)单重的0线程的D)不能继承设有定义inti=6;,则执行以下语句后,i的值为(C)。i+=i-1;A)10B)121C)11D)100下列选项中,用于在定义子类时声明父类名的关键字是(C)。A)interfaceB)packageC)extendsD)class若已定义byte[]x={11,22,33,-66);其中0WkW3,则对x数组元素错误的引用是(C)。A)x[5-3]B)x[k]C)x[k+5]D)x[0]下列语句序列执行后,chi的值是(B)0charchl='A',ch2='W':if(chl+2<ch2)++chl;A)'A*B)'B'C)CD)B下列语句序列执行后,i的值是(D)ointi=8,j=16;if(i-1>j)i—;elsej—;A)15B)16C)7D)8下列语句序列执行后,k的值是(C)ointi=10,j=18,k=30;switch(j-i){case8:k++;case9:k+=2;case10:k+=3;default:k/=j;A)31B)32C)2D)33下面语句执行后,i的值是(B)。for(inti=0,j=l;j<5;j+=3)i=i+j;A)4B)5C)6D)7设有定义floatx=3.5f,y=4.6f,z=5.7f;则以下的表达式中,值为true的是(B)oA)x>y||x>zB)x!=yC)z>(y+x)D)x<y&!(x<z)下列语句序列执行后,i的值是(D)ointi=16;do{i/=2;}while(i>3);A)16B)8C)4D)2以下由for语句构成的循环执行的次数是(B)ofor(inti=0;true;i++);A)有语法错,不能执行B)无限次0执行1次D)一次也不执行定义类头时能运用的修饰符是(C )oA)privateB)staticC)abstractD)protected设int型变量a、b,float型变量x、y,char型变量ch均已正确定义并赋值,正确的switch语句是D)。A)switch(x+y)B)switch(ch+1)C)switchchD)switch(a+b);下列最终属性i的定义中,正确的是()。A)staticfinalinti=100;B)finalinti=l.2;C)finali='w':D)finalchari;下列类定义中,不正确的是(C)oclassx{....}classxextendsy{....}staticclassximplementsyl,y2{....)publicclassxextendsApplet{....}设x、y为已定义的类名,下列声明x类的对象xl的语句中正确的是()。A)staticxxl;B)publicxxl二newx(int123);C)yxl;D)xxl=x();设i、j、k为类x中定义的int型变量名,下列类x的构造函数中不正确的是(B)。A)x(intm){...(B)voidx(intm)(...)C)x(intm,intn){...}D)x(inth,intm,intn){...}下列方法定义中,正确的是(A)。intx(){charch='a';return(int)ch;}voidx()(...returntrue;}intx(){...returntrue;}intx(inta,b){returna+b;}用于定义类成员的访问限制权的一组关键字是(D)。class,float,double,publicfloat,boolean,int,longchar,extends,float,doublepublic,private,protected不能构成循环的语句是(C)。A)for语句B)while语句C)switch语句D)do while语句下列程序段执行后b3的结果是(D)。

booleanbl二true,b2,b3;24=bl?bl:b2;A)0B)1C)trueD)false25下面数据结构中,属于非线性的是(B)0A)线性表B)树C)队列D)堆栈11.设有定义inti=123;longj=456;下面赋值不正确的语句是(D)。A)j二i;B)j=(long)i;C)i=(int)j;D)i=j;二、填空题:(每空1分)构造函数—没—有返回值。Java语言中的浮点型数据依据数据存储长度和数值精度的不同,进一步分为floatdouble double 两种具体类型。创建类对象的运算符是newo4.当整型变量n的值不能被13除尽时,其值为false的Java语言表达式是n%13=0 5.在Java语言中,全部的数组都有一个lenght属性,这个属性存储了该数组的元素个数。6,定义类就是定义一种抽象的 6,定义类就是定义一种抽象的 父类 ,它是全部具有确定共性的对象的抽象描述。7.在Java语言中,运用—平台无关__、_java虚拟机—等技术,实现软件重用。8.表达式3/6*5的计算结果是09.下面是一个类的定义:publicclass_int Myclass intx,y;Myclass(inti, =0 )//构造函数x=i;y二j;10.下面是一个JavaApplication的主类的定义,其功能是输出全部叮嘱行参数。importjava.io.♦:publicclassMyClass(publicstaticvoidmain(Stringargs[]){if(args,length!=_0 )for(inti=0;i<args,length;i++)System,out.println(_Hi=ff+i );elseSystem,out.println(没有叮嘱行参数);!11下面是一个小程序的主类myprogram的定义,其中A、B是该主类所在源程序中已定义的另两个类的类名:importjavaawt.*;importjavaapplet.*;publicclassmyprogramextendsApplet〃定义小程序的主类{Aa;Bb;public myprogram init(){a=newA();b= new B():})Java的复合数据类型有:类、数组和—接口—等。Java的简洁数据类型有:数值类型(整形和浮点类型),自负类型和布尔类型表达式3/6*5的计算结果是_0 o定义初值为10的10次方的长整型变量Ivar的语句是: longlvar=l*e10 。依次结构、分支结构(或称选择结构)、—循环结构 是结构化程序设计的三种基本流程限制结构。以下方法m的功能是求两参数之积的整数部分。intm(floatx,floaty){ k=(int)x*y ;}Java源程序文件编译后产生的文件称为—字节码—文件,其扩展名为 .class OJava和C++都是面对对象的程序设计语言。三、程序分析:(每题4分)下面是一个排序的程序:importjava.io.♦:publicclassTest56_Sortpublicstaticvoidmain(Stringargs[])(int[]a={42,99,5,63,95,36,2,69,200,96};System,out.println(排序前的数据序列:);ShowArray(a);Sort(a);System,out.println(排序后的数据序列:);ShowArray(a);!publicstaticvoidSort(int[]x)intw;for(inti=l;i<x.length;i++)for(intj=0;j<x.length-1;j++)if(x[j]>x[j+l])(w=x[j];x[j]=x[j+l];x[j+l]=w;)/*if(i=l||i=2)ShowArray(x);if(i==2)break;*/publicstaticvoidShowArray(intb[])for(inti=0;i<b.length;i++)System,out.print("b[i"+i+"]="+b[i]);System,out.printIn();!问题:假如将方法SortO中的一对注释符(/**/)去掉,程序输出的结果是什么?排序前的数据序列:b[0]=42b[l]=99b[2]=5b[3]=63b[4]=95b[5]=36b[6]=2b[7]=69b[8]=200b[9]=96b[0]=42b[l]=5b[2]=63b[3]=95b[4]=36b[5]=2b[6]=69b[7]=99b[8]=96b[9]=200b[0]=5b[l]=42b[2]=63b[3]=36b[4]=2b[5]=69b[6]=95b[7]=96b[8]=99b[9]=200排序后的数据序列:b[0]=5b[l]=42b[2]=63b[3]=36b[4]=2b[5]=69b[6]=95b[7]=96b[8]=99b[9]=200请写下程序的输出结果:publicclassTest52Stringstrl=wHello,Javaworld!\tw;Stringstr2=nHello,students!";publicstaticvoidmain(Stringargs[]){System,out.print(strl);System,out.println(str2);输出结果:请写下程序的输出结果:publicclassT2_4{publicstaticvoidmain(String[]args)inti,j;charc='*':for(i=0;i<5;i++)i:for(j=0;j<=i;j++)System,out.print("*”);System,out.printlnO;输出结果:4、请写下程序的输出结果:publicclassex2_2(publicstaticvoidmain(Stringargs[])I:intx,y;byteb=6;floatz=1.234f;doublew=1.23;booleanflag;x=12;y=300;flag=x>y;System,out.printin("x>y—,r+flag);flag=z>w;System,out.printin("z〉w="+flag);四、问答题:(每题5分,)Java的接口和C++的虚类的相同和不同处。由于Java不支持多继承,而有可能某个类或对象要运用分别在几个类或对象里面的方法或属性,现有的单继承机制就不能满足要求。与继承相比,接口有更高的灵敏性,因为接口中没有任何实现代码。当一个类实现了接口以后,该类要实现接口里面全部的方法和属性,并且接口里面的属性在默认状态下面都是publicstatic,全部方法默认状况下是public,一个类可以实现多个接口o垃圾回收的优点和原理。并考虑2种回收机制。Java语言中一个显著的特点就是引入了垃圾回收机制,使C++程序员最头疼的内存管理的问题迎刃而解,它使得Java程序员在编写程序的时候不再须要考虑内存管理。由于有个垃圾回收机制,Java中的对象不再有”作用域"的概念,只有对象的引用才有"作用域"。垃圾回收可以有效的防止内存泄露,有效的运用可以运用的内存。垃圾回收器通常是作为一个单独的低级别的线程运行,不行预知的状况下对内存堆中已经死亡的或者长时间没有运用的对象进行清楚和回收,程序员不能实时的调用垃圾回收器对某个对象或全部对象进行垃圾回收。回收机制有分代复制垃圾回收和标记垃圾回收,增量垃圾回收。谈谈final,finally,finalize的区分。Final-修饰符(关键字)假如一个类被声明为final,意味着它不能再派生出新的子类,不能作为父类被继承。因此一个类不能既被声明为abstract的,又被声明为final的。将变量或方法声明为final,可以保证它们在运用中不被变更。被声明为final的变量必需在声明时给定初值,而在以后的引用中只能读取,不行修改。被声明为final的方法也同样只能运用,不能重载。Finally一再异样处理时供应finally块来执行任何清除操作。假如抛出一个异样,那么相匹配的catch子句就会执行,然后限制就会进入finally块(假如有的话)。Finalize—方法名。Java技术允许运用finalize()方法在垃圾收集器将对象从内存中清除出去之前做必要的清理工作。这个方法是由垃圾收集器在确定这个对象没有被引用时对这个对象调用的。它是在Object类中定义的,因此全部的类都继承了它。子类覆盖finalizeO方法以整理系统资源或者执行其他清理工作ofinalize()方法是在垃圾收集器删除对象之前对这个对象调用的。数组■有没有length()这个方法?String有没有length()这个方法?举例说明运用方法?数组没有length()这个方法,有length的厲性。String有有length()这个方法。Java中的异样处理机制的简洁原理和应用。当JAVA程序违反了JAVA的语义规则时,JAVA虚拟机就会将发生的错误表示为一个异样。违反语义规则包括2种状况。一种是JAVA类库内置的语义检查。例如数组下标越界,会引发IndexOutOfBoundsException;访问nul1的对象时会引发NullPointerException.另一•种状况就是JAVA允许程序员扩展这种语义检查,程序员可以创建自己的异样,并自由选择在何时用throw关键字引发异样。全部的异样都是java.lang.Thowable的子类。五、程序设计:(每题11分,共33分)1、 编程:编写一个截取字符串的函数,输入为一个字符串和字节数,输出为按字节截取的字符串。但是要保证汉字不被截半个,如"我ABC”4,应当截为"我AB”,输入"我ABC汉DEF",6,应当输出为”我ABC”而不是"我ABC+汉的半个”。2、 编程求解:全部两位整数能被3整除的数的和,以及不能被3整除的数的各位数字之和。3、 设计一个程序求解e的值。精度达到1.0e-6,4、 请设计一个对N个数进行排序的程序一、选择题(每道题只有一个正确答案,每小题2分,共30分)15道题1、 关于Java语言叙述错误的是:(C)Java语言具有跨平台性Java是一种面对对象的语言Java语言中的类可以多继承Java的垃圾收集机制自动回收程序已不再运用的对象2、 以下叙述正确的是:(B)的确台a构造方法必需是public方法main方法必需是public方法Java应用程序的文件名可以是随意的构造方法应当声明为void类型3、 关于Java中数据类型叙述正确的是:(B)整型数据在不同平台下长度不同boolean类型数据只有2个值,true和false数组属于简洁数据类型Java中的指针类型和C语言的一样4、 设intx=l,floaty=2,则表达式x/y的值是:(D)TOC\o"1-5"\h\z012以上都不是5、 以下语句有语法错的是:(A)intx=l;y=2;z=3for(intx=10,y=0;x>0;x++):while(x>5):for(:;);6、 关于类和对象的叙述正确的是:(A)Java的类分为两大部分:系统定义的类和用户自定义的类类的静态属性和全局变量的概念完全一样,只是表达形式不同类的成员至少有一个属性和一个方法类是对象的实例化7、 以下有关构造方法的说法,正确的是:(A)一个类的构造方法可以有多个构造方法在类定义时被调用构造方法只能由对象中的其它方法调用构造方法可以和类同名,也可以和类名不同8、 以下有关类的继承的叙述中,正确的是:(D)子类能干脆继承父类全部的非私有属性,也可通过接口继承父类的私有属性子类只能继承父类的方法,不能继承父类的属性子类只能继承父类的非私有属性,不能继承父类的方法子类不能继承父类的私有属性9、 下列属于容器的组件有:(B)JButtonJPaneCanvasJTextArea10、 void的含义:(C)方法体为空定义的方法没有形参定义的方法没有返回值方法的返回值不能参加算术运算11、 关于Java中异样的叙述正确的是:(D)异样是程序编写过程中代码的语法错误异样是程序编写过程中代码的逻辑错误异样出现后程序的运行立即中止异样是可以捕获和处理的12、 全部的异样类皆继承哪一个类?(C)java.io.Exceptionjava.lang.Throwablejava.lang.Exceptionjava.lang.Error13、 下面哪个不是java语言中的关键字?(B)longsizeofinstanceofconst14、 为实现进程之间的通信,须要运用下列那种流才合适?(D)DatastreamFilestreamBufferedstreamPipedstream15、在复选框中移动鼠标,然后单击一选项,要捕获所选项必需实现哪个接口?(D)ActionListenerMouseListenerMouseMotionListernItemListener二、 填空题(每空1分,共20分)1、 面对对象程序设计所具有的基本特征是:—抽象性 封装性 继承性一_多态性—2、 数组x定义如下intx[][]=newint[3][2]则x..length的值为 3 ,x[0],length的值为 2 。3、 Java中实现多线程一般运用两种方法,一是—继承Thread类 ,二是 实现Runnable方法 4、 Java的图形用户界面设计中,有很多布局管理器用来摆放组件的位置,一般用到的布局管理器有(列出四种即可)—FlowLayout , GridLaycut , BorderLayout , CardLayout 5、 Applet常用的方法是: init()_、 run() 、 stop() 和destroy()0三、 阅读程序,写出程序的输出结果(每题5分,共20分)1、 classA(privateintprivateVar;A(int_privateVar){privateVar=_privateVar;booleanisEqualTo(AanotherA)(if(this.privateVar=anotherA.privateVar)returntrue;elsereturnfalse;}publicclassB(publicstaticvoidmain(Stringargs[])(Aa=newA(l);Ab=newA(2);System,out.println(a.isEqualTo(b));}}程序的输出结果为:—false_2、 classA(doublef(doublex,doubley){returnx*y;}}classBextendsA(doublef(doublex,doubley){returnx+y;}}publicclassTest(publicstaticvoidmain(Stringargs[]){Bobj=newB0:System,out.printlnC'Theprogramoutputis"+obj.f(4,6));}}程序的输出结果为:_Theprogramoutputis10publicclassUnchecked(publicstaticvoidmain(String[]args){try(method0;}catch(Exceptione)(System,out.println("A");}finally{System,out.println(HB");}}staticvoidmethod()(try(wrench0;System,out.println("C");!catch(ArithmeticExceptione){System,out.println(HD");}finally{System,out.printlnC'E'1);}System,out.println("F");}staticvoidwrench(){thrownewNulIPointerException();}程序的输出结果为:EAB4、 publicclassTest{publicstaticvoidmain(String[]args){intx;inta[]={0,0,0,0,0,0);calculate(a,a[5]);System,out.printin(Hthevalueofa[0]is"+a[0]);System,out.printin("thevalueisa[5]is"+a[5]):staticintcalculate(intx[],inty){for(inti=1;i<x.length;i++)if(y<x.length)x[i]=x[i-1]+1;returnx[0];}程序的输出结果为:thevalueofa[0]is0thevalueisa[5]is5下面哪些是short型的取值范围[C]-27-27-10-216-1-215-215-1-231-231-1下面哪些是合法的标识符[ABE]SpersonsTwoUsers*pointthis_endline哪些是将一个十六进制值赋值给一个long型变量[D]long number = 345L;long number = 0345;long number = 0345L;

D.longnumber=0x345L;下面的哪些程序片断可能导致错误。[BD]A.Strings="Gonewiththewind'1;Stringt="good";Stringk=s+t;B.Strings="Gonewiththewind”;Stringt;t=s[3]+"one";C.Strings="Gonewiththewind'1;Stringstandard=s.toUpperCase():D.Strings="homedirectory";Stringt=s-"directory";在//pointx处的哪些声明是合法的[DE]classPerson{privateinta;publicintchange(intm){returnm;}publicclassTeacherextendsPerson{publicclassTeacherextendsPerson{publicintb;publicstaticvoidmain(Stringarg[]){Personp=newPerson0;Teachert二newTeacher():inti;//pointxi=m;i=b;i二p.a;i=p.change(30);i=t.b;当Frame的大小被变更时,Frame中的按钮的位置也可能被变更,请问此时运用的是什么布局管理器[B]BorderLayoutFlowLayoutCardLayoutGridLayout给出下面的代码片断publicvoidcreate(){VectormyVect;myVect=newVector():}下面的哪些陈述是正确的?[ADE]其次行的声明不会为变量myVect支配内存空间。〃指的是堆空间,只是在栈中支配;这里不用较真.自己理解就好;其次行的声明支配一个到Vector对象的引用的内存空间。其次行语句创建一个Vector类对象。第三行语句创建一个Vector类对象。第三行语句为一个Vector类对象支配内存空间。〃支配栈空间,相当于指针,但是担心排”到Vector对象的引用的空间”;选项二的意思是支配了堆空间;下面的哪些答案可以用以表示八进制值8?[A]TOC\o"1-5"\h\z0100x10081212}11110x8哪些不是Java关键字[AB]TRUEsizeofconstsupervoid下面的哪些叙述为真。[AD]equals()方法判定引用值是否指向同一对象。〃不说是谁的就是默认的=操作符判定两个分立的对象的内容和类型是否一样。equals0方法只有在两个对象的内容一样时返回true。类File重写方法equals()在两个分立的对象的内容和类型一样时返回true。//当两个独立的对象的内容和类型一样;下面关于继承的哪些叙述是正确的。[AD]在java中只允许单一继承。在java中一个类只能实现一个接口。在java中一个类不能同时继承一个类和实现一个接口。java的单一继承使代码更牢靠。第十行的声明将调用哪些方法.[D]classPerson{publicvoidprintValue(inti,intj){}publicvoidprintValue(inti){}}publicclassTeacherextendsPerson{publicvoidprintValueO{}publicvoidprintValue(inti){}publicstaticvoidmain(Stringargs[]){Persont=newTeacher():t.printValue(lO):第2行的方法第3行的方法第6行的方法第7行的方法下面哪些不是java的原始数据类型[BC]shortBooleanunitfloat下面的哪些关键字通常用来对对象的加锁,该标记使得对对象的访问是排他的?[B]transientsynchronizedserializestaticmain。方法的返回类型是什么?[B]intvoidbooleanstatic给出以下关于一个运用适当的字符间距的字体的TextField的表达式TextFieldt=newTextFieldC'theyaregood",40);//40指的是像素哪些叙述是对的?[D]被显示的字符串可以运用多种字体。一行中最大的字符数是40显示的宽度正好是40个字符宽。用户可以编辑字符。关于垃圾收集的哪些叙述是对的?[B]程序开发者必需自己创建一个线程进行内存释放的工作。垃圾收集将检查并释放不再运用的内存。垃圾收集允许程序开发者明确指定并立刻释放该内存。垃圾收集能够在期望的时间释放被java对象运用的内存。给出下面的代码publicclassTest(intm,n;publicTest0{)publicTest(inta)(m=a;)publicstaticvoidmain(Stringarg[]){Testtl,t2;intj,k;j=0;k=0;tl=newTest();t2=newTest(j,k);}}在编译时哪行将导致一个错误?[D]第3行第5行第6行第10行Thread的方法resume()负责复原哪些线程的执行?[D]通过调用stop。方法而停止的线程。通过调用sleep()方法而停止运行的线程。通过调用wait。方法而停止运行的线程。通过调用suspend()方法而停止运行的线程。〃已经过期了有关线程的哪些叙述是对的?[BD]一旦一个线程被创建,它就立刻起先运行。

运用start()方法可以使一个线程成为可运行的,但是它不愿定立刻起先运行。当一个线程因为抢先机制而停止运行,它被放在可运行队列的前面。〃比它优先级高的进程抢占了cpu,它运行的时间依据操作系统而定;一个线程可能因为不同的缘由停止并进入就绪状态。〃可运行状态给出下面的不完整的方法1{success二connect();if(success==-l){thrownewTimedOutExceptionO;}}已知TimedOutException不是一个RuntimeExceptiono下面的哪些声明可以被加入第一行完成此方法的声明[BC]A.publicvoidmethod()B.publicvoidmethod()throwsExceptionC.publicvoidmethod()throwsTimedOutExceptionD.publicvoidmethod()A.publicvoidmethod()B.publicvoidmethod()throwsExceptionC.publicvoidmethod()throwsTimedOutExceptionD.publicvoidmethod()throwTimedOutExceptionE.publicthrowTimedOutExceptionvoidmethod()E.给出下面的代码classPerson{Stringname,department;publicvoidprintValueO{System,out.printIn("nameis”+name);System,out.println("departmentisM+department);(}publicclassTeacherextendsPerson{intsalary;publicvoidprintValueO{//完成父类代码中printValue()相同的工作System,out.printin("salaryisw+salary):}}下面的哪些表达式可以加入printValue()方法的注释部分?[D]printValue();this.printValueO:person.printValueO;super.printValue0;下面的哪些赋值语句是错的?[A]floatf=11.1;doubled=5.3E12;doubled=3.14159;doubled=3.14D;给出下面的不完整的类代码classPerson(Stringname,department;intage;publicPerson(Stringn)(name=n;}publicPerson(Stringn,inta)(name=n;age=a;}publicPerson(Stringn,Stringd,inta){//完成Person(Stringn,inta)的逻辑department二d;}下面的哪些表达式可以加到构造方法中的注释处?[C]Person(n,a);this(Person(n,a));〃构造函数的名字不能当方法名调用;this(n,a):this(name,age);//构造方法的参数也不能干脆传实例变量名下面关于变量及其范围的陈述哪些是对的?[ACD]实例变量是类的成员变量。实例变量用关键字static声明。在方法中定义的局部变量在该方法被执行时创建局部变量在运用前必需被初始化。给出下面的代码publicvoidtest()(try{oneMethod0;System,out.printIn("condition1"):}catch(ArrayIndexOutOfBoundsExceptione)(System,out.printIn("condition2");}catch(Exceptione){System,out.printIn("condition3");}finally{System,out.printin("finally");}}在。neMethod()方法运行正常的状况下将显示什么?[AD]condition1condition2condition3finally给出下面的代码publicclassTest{voidprintValue(intm)(do)System,out.printin("Thevalueis"+m);}while(--m>10);publicstaticvoidmain(Stringarg[])(inti=10;Testt=newTest();t.printValue(i);}输出将是什么?[C]TOC\o"1-5"\h\z891011下面的有关声明的哪些叙述是对的?[BC]对原始数据类型例如boolean,byte的变量的声明不会为该变量支配内存空间。对原始数据类型例如boolean,byte的变量的声明将为之支配内存空间。非原始数据类型例如String,Vector的变量的声明不会为该对象支配内存。非原始数据类型例如String,Vector的变量的声明会为该对象支配内存。〃该对象指的是堆空间的对象;指向该对象的引用只能叫变量;类的设计要求它的某个成员变量不能被外部类干脆访问。应当运用下面的哪些修饰符获得须要的访问限制?[D]public不加修饰符protectedprivate//面对对象编程P196页的表格.private—行有错误给出下面的代码片断Stringstr=null;if((str!=null)&&(str.length()>10))(System,out.printin("morethan10"):}elseif((str!=null)&(str.length()<5)){//空指针异样System,out.println("lessthan5"):(else{System,out.println("end"):}哪些行将导致错误?[C]第1行第2行第5行第8行下面有关java代码平安性的叙述哪些是对的?[BCD]字节码校验器加载查询执行须要的全部类。运行时说明器执行代码。在运行时,字节码被加载,验证然后在说明器里面运行。类加载器通过分别本机文件系统的类和从网络导入的类增加平安性。给出下面的代码publicclassPerson{intarr[]=newint[10];//非静态属性publicstaticvoidmain(Stringa[]){System,out.printin(arr[1]);//静态方法不能访问非静态属性(}哪些叙述是对的?[A]编译时出错。编译时正确而运行时出错。输出0。输出nullo给出下面的代码publicclassParent{publicintaddValue(inta,intb)(ints;

s二a+b;returns;classChildextendsParentA.B.C.哪些方法可以加入类Child中?intaddValue(inta,intbpublicvoidaddValue(){//publicintaddValue(inta[BC]〃方法A.B.C.哪些方法可以加入类Child中?intaddValue(inta,intbpublicvoidaddValue(){//publicintaddValue(inta[BC]〃方法的覆盖){//dosomething...(dosomething...)))//dosomething...}D.publicintaddValue(inta,intb)throwsException{//dosomething...(D.公有成员变量MAXLENGTH是一个int型值,变量的值保持常数值100,定义这个变量的代码为?[CD]publicintMAX_LENGTH=100;finalintMAX_LENGTH=100;finalpublicintMAX_LENGTH=100;〃修饰符的依次可以交换publicfinalintMAX_LENGTH=100;下面的哪些java源文件代码片断是对的?[ACD]packagetestpackage;publicclassTest{//dosomething...}importjava.io.*;packagetestpackage;publicclassTest{//dosomething...}importjava.io.*;classPerson{//dosomething...}publicclassTest{//dosomething...}importjava.io.♦:importjava.awt.*;publicclassTest(//dosomething..I给出下面的类publicclassSample)longlength;publicSample(long1)(length=1;Ipublicstaticvoidmain(Stringarg[])(Samplesi,s2,s3;si=newSample(21L);s2二newSample(21L);s3=s2;longm=21L;}哪个表达式返回true?[B]si==s2;s2==s3;m=si;si.equals(m):给出下面有关java.awt.List的表达式List1=newList(6,true);//其次个参数是false的话只能选一个其中哪些叙述是正确的?[AC]在没有其它的约束的条件下该列表将有6行可见。一行的最大字符数是6列表将允许用户多选列表只能有一项被选中给出下面的代码classParent{Stringone,two;publicParent(Stringa,Stringb)(one=a;two=b;publicvoidprint(){System,out.printIn(one):IpublicclassChildextendsParent{publicChiId(Stringa,Stringb)(super(a,b);(publicvoidprint(){System,out.printin(one+Hto"+two);publicstaticvoidmain(Stringargs[]){Parentp二newParent("south","north'1);Parentt=newChiId("east'1,"west"):p.print();t.print();}}下面的哪些状况或输出的结果正确?[E]编译时出错southeastsouthtonortheasttowestsouthtonortheastsoutheasttowest类Teacher和Student都是类Person的子类Personp;Teachert;Students;若p,t和s都是非空值if(tinstanceofPerson)(s=(Student)t;}这个语句导致的结果是什么?[C]//默认new时声明的都是本类;将构造一个Student对象表达式合法编译时非法编译时合法而在运行时可能非法给出下面的代码Strings="hello";Stringt="hello";charc[]=下列选项里,哪些返回true?[ACD]s.equals(t);t.equals(c);s==t;t.equals(newString("hello"));t==c;一、单选题(本大题15小题,每小题2分,共30分)下列语句执行后,变量a、c的值分别是()。intx=182;inta,c;c=x/100;a=x%10;A)1,2 B)2,1 C)1.82,2D)100,82【答案】B下面哪个表达式可用得到x和y的最大值()?A)x>y?y:xB)x<y?y:x C)x>y?(x+y):(x-y)D)x==y?y:x;

【答案】B以下是应用程序中定义的静态方法printBinary,若在其main方法中有方法调用语句printBinary(2),则输出的结果是()。staticvoidprintBinary(inti){System,out.print(i+”的2进制数表示为:\t");for(intj=31;j>=0;j—)if(((l«j)&i)!=0)System,out.print("1”);elseSystem,out.print("0");System,out.println()://换行}A)00000000000000000000000000000001B)00000000000000000000000000000010000000000000000000000000000001111D)00000000000000000000000000000000【答案】B应用程序的main方法中有以下语句,则输出的结果是()。Stringsl="0.5",s2="12”;doublex二Double.parseDouble(si);inty=Integer.parselnt(s2):System,out.println(x+y);D)“12.5"D)PI=1234.0A)12.5 B)120.5 C)12D)“12.5"D)PI=1234.0【答案】A应用程序的main方法中有以下语句,则输出的结果是()。doublex=1234.1234567;DecimalFormatforml=newDecimalFormat("0000.0");System,out.println("PI=H+forml.format(x));A)PI=1234.1 B)Pl=12340 PI=1234.1235

【答案】A下列程序段执行后的结果是()。Strings=newString("abcdefg");for(inti=0;i<s.length();i+=2)(System,out.print(s.charAt(i)):)A)aceg B)ACEG C)abcdefg【答案】A应用程序的main方法中有以下语句,则输出的结果是()。int[]x={122,33,55,678,-987);intmax=x[0];for(inti=l;i<x.length;i++)(if(x[i]>max)max=x[i];System,out.printin(max);A)678 B)122 C)-987【答案】A下列语句序列执行后,k的值是()。intx=2,y=5,k=0;switch(x%y) {case0:k=x+y;break;case1:k=x-y;break;case2:k=x*y;break:default:k=x/y;break;System,out.printin(k);A)2 B)5 C)10D)abedD)33D)0【答案】CD)abedD)33D)0下面的程序输出的结果是()publicclassAimplementsB{publicstaticvoidmain(Stringargs[]){inti;Acl=newA();i=cl.k;System,out.println("i="+i);}!interfaceB{intk=10;!A)i=0 B)i=10 0程序有编译错误D)i=true【答案】B应用程序的main方法中有以下语句,则输出的结果是()。intb[][]=({1,2,3},{4,5},)6,7)};intsum=0;for(inti=0;i<b.length;i++)(for(intj=0;j<b[i].length;j++){sum+=b[i][j];}System,out.prin11n("sum="+sum);TOC\o"1-5"\h\zA)28 B)6 C)9 D)13【答案】A有整型数组:int[]x={12,35,8,7,2};,则调用方法Arrays,sort(x)后,数组x中的元素值依次是().A)2 7 8 12 35B)12358 7 2C)35128 72D)8 7 12352【答案】A编译和运行下面的应用程序,并在叮嘱行界面输入12345,则回车后屏幕输出的结果是().publicclassA{publicstaticvoidmain(Stringargs[])throwsIOException{BufferedReaderbuf=newBufferedReader(newInputStreamReader(System,in)):Stringstr=buf.readLineO;intx=Integer.parselnt(str);System,out.println(x/100);(A)45 B)5 0 123 D)12345【答案】C下面的程序段执行后输出的结果是()。StringBufferbuf=newStringBuffer(wBeijing2023w);buf.insert(7,;System,out.printin(buf.toStringO);A)Beijing@2023B)@Beijing2023C)Beijing2023@D)Beijing#2023【答案】A下面的程序编译运行后输出的结果是()。publicclassAimplementsRunnable(publicstaticvoidmain(Stringargv[]){Aa=newA();Threadt二newThread(a);t.start();}publicvoidrun()Iwhile(true)(try{Thread.currentThread().sleep(1000);}catch(InterruptedExceptione){System,out.printin(e.toStringO);System,out.printlnC'loopingwhile");}})A)在屏幕上重复输出"loopingwhile"oB)在屏幕上输出一次"loopingwhile"®没有结果输出。 D)以上说法都错误。【答案】A下面的程序段创建了BufferedReader类的对象in,以便读取本机d盘my文件夹下的文件l.txt。File构造函数中正确的路径和文件名的表示是()。Filef=newFile(填代码处);file=newFileReader(f):in=newBufferedReader(file);A)Hl.txt" B)"d:\\my\\l"C)"d:WmyWl.txtH"d:\my\l.txt"【答案】C二、多选题(本大题10小题,每小题2分,共20分)下面的说法正确的是()。A)Java语言是面对对象的、说明执行的网络编程语言。B)Java语言具有可移植性,是与平台无关的编程语言。0Java语言可对内存垃圾自动收集。D)Java语言编写的程序虽然是“一次编译,

到处运行",但必需要java的运行环境。【答案】ABCD下面main。方法的定义哪些是正确的()?A)publicstaticvoidmain(Stringargs[])(}B)publicstaticvoidA)publicstaticvoidmain(Stringargs[])(}B)publicstaticvoidmain(String[])(}C)publicstaticvoidmain(String[]args)(}D)publicstaticvoidmain(String[]x)()C)publicstaticvoidmain(String[]args)(}D)publicstaticvoidmain(String[]x)()【答案】ACD定义变量如下:charc='wr;inti=8;charc='wr;inti=8;longL=15;floatf=8.9f;以下赋值语句正确的是()oA)i=c+i;B)c=c+i;C)L=f+L;D)f=i+L+f;A)i=c+i;B)c=c+i;C)L=f+L;D)f=i+L+f;【答案】AD下面哪些关键字能用来限制对类成员的访问()?D)defaultA)publicB)protected C)privateD)default【答案】ABC5.面对对象程序设计的基本特征是()oA)抽象B)5.面对对象程序设计的基本特征是()oA)抽象B)封装C)继承D)【答案】ABCD6.下面关于类的说法正确的是()。A)类是A)类是Java语言中的一种复合数据类型。B)类中包含数据变量和方法。C)类是对全部具有确定共性的对象的抽象。D)Java语言的类只支持单继承。【答案】ABCD7.编译并运行下面的程序,运行结果为().publicclassT1{publicstaticvoidmain(String]]args){T1a=newT1();a.method(8);a.method(1.2f);}voidmethod(floati)(System,out.println(wfloat:"+i);}voidmethod(longi){System,out.println(wlong:"+i);}程序有编译错误,因为两个method()方法必需定义为静态(static)的。程序可以编译运行,输出结果为:long:8float:1.2程序可以编译运行,输出结果为:float:1.2long:8程序中定义的两个参数不同的method方法称为方法重栽。【答案】BD下面是在叮嘱行运行Java应用程序A,怎样才能在main(Stringargs[])方法中访问单词"first"( )?javaAthefirstsnow,thefirstsnowcame.args[0]B)args[l]C)args[2]D)args[5]【答案】BD编译并运行下面的程序,运行结果为().publicclassA{publicstaticvoidmain(StringE]args)(Aa=newB();a.test();}voidtest() (System,out.print("A");}classBextendsA{voidtest(){super,test();System,out.println("B");}A)子类B定义了与父类A中同名的方法test,java中称为方法的覆盖。B)代码可以编译运行,并输出结果:ABC)代码可以编译运行,并输出结果:A。D)子类B定义了与父类A中同名的方法test,java中称为方法的重载【答案】AB下面哪个说法正确()?A) 假如某公共的接口被声明在一个源文件中,则接口必需与源文件具有相同的名字。B) 假如源文件包含import语句,则该语句必需是除空行和注释行外的第一个语句行。C) 假如某源文件包含package语句,则该语句必需是第一个非空、非注释行。D) 接口中的方法必定是抽象方法,但可以不用关键字abstract修饰。【答案】ABCD三、填空题(本大题10小题,每小题1分,共10分)创建类的对象时,运用运算符 给对象支配内存空间。定义类的构造方法不能有返回值类型,其名称与 名相同。Java语言中关键字 表示双精度类型。若有定义:floatb={l.If,3.5f,6.8f}:,则b.length()的值是若有类定义:classBextendsA{则类B是类A的 o接口中的成员只有静态常量和 o在子类中运用关键字 做前缀可调用被子类覆盖的父类中的方法。关键字 用于导入包中的类到程序中,供程序中运用。Java语言中,通常把可能发生异样的方法调用语句放到try块中,并用紧跟其后的 块来捕获和处理异常。程序中实现多线程的方法有两种:继承 类和实现Runnable接口。【答案】new 2.类 3.double4.3 5.子类 6.抽象方法7.super8.import9.catch10.Thread四、阅读程序,回答问题(本大题5小题,每小题5分,共25分)1.(5分)1:publicclassOutputl{2: publicstaticvoidmain(Stringarge[])(3:inti=0;

3:4: for(charch=97;ch<113;ch++,i++){5: if(i%8==0)6: System,out.printinC”);7: System,out.print(w\t"+ch):8: }9: }10:((1)程序第5、6行的if语句的功能是什么?(2分)(2)程序输出的结果有几行?(3分)【答案】(1)每打印8个字符,则换行。(2)输出的结果有2行。(5分)1:importjava.util.Arrays;2:3:publicclassSortArray{4:publicstaticvoidmain(Stringargs[])(5: String[]str={"size”,"abs”,"length”,"class"};6: Arrays,sort(str);7: for(inti=0;i<str,length;i++)8: System,out.print(str[i]+"M);9: }10: ((1)写出程序运行后的结果。(2分)(2)方法调用str[0].length0的返回结果是多少?(3分)【答案】(1)absclasslengthsize(2)4(5分)//TestKeyListener.java232345importjava.awt.*;importjava.awt.event.*;

publicclassTestKeyListenerextendsApplet{Colorclr;10:publicvoidinit()(11:12:addKeyListener(13:newKeyAdapter()(14:publicvoidkeyTyped(KeyEvente15:if(e.getKeyChar()=='r'||e.getKeyChar()=='R')16:clr=Color.red;17:elseif(e.ge

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论