Java期末考试题一、选择题。1.编译JavaApplet源程序文件产生的字节码文件的扩展名为(B)。A、javaB、classC、htmlD、exe2.main方法是JavaApplication程序执行的入口点,关于main方法的方法头以下哪项是合法的(B)?A、publicstaticvoidmain()B、publicstaticvoidmain(Stringargs[])C、publicstaticintmain(String[]arg)D、publicvoidmain(Stringarg[])3.为AB类的一个无形式参数无返回值的方法method书写方法头,使得使用类名AB作为前缀就可以调用它,该方法头的形式为(A)。A、staticvoidmethod()B、publicvoidmethod()C、finalvoidmethod()D、abstractvoidmethod()4.下列哪个是合法的Java标识符?(C)A、Tree&GlassesB、FirstJavaAppletC、_$theLastOneD、273.55.JavaApplication源程序的主类是指包含有(A)方法的类。A、main方法B、toString方法C、init方法D、actionPerfromed方法6.Java的字符类型采用的是Unicode编码方案,每个Unicode码占用(B)个比特位。A、8B、16C、32D、647.设a=8,则表达式a2的值是(B)。A、1B、2C、3D、48.若a的值为3时,下列程序段被执行后,c的值是多少?(C)c=1;if(a0)if(a3)c=2;elsec=3;elsec=4;A、1B、2C、3D、49.在编写JavaApplication程序时,若需要使用到标准输入输出语句,必须在程序的开头写上(C)语句。A、importjava.awt.*;B、importjava.applet.Applet;C、importjava.io.*;D、importjava.awt.Graphics;10.对于构造函数,下列叙述正确的是()。A、构造函数是类的一种特殊函数,它的方法名必须与类名相同。B、构造函数的返回类型只能是void型。C、构造函数的主要作用是完成对类的对象的初始化工作。D、一般在创建新对象时,系统会自动调用构造函数。11.下面的是关于类及其修饰符的一些描述,正确的是:()。A、abstract类只能用来派生子类,不能用来创建abstract类的对象。B、final类不但可以用来派生子类,也可以用来创建final类的对象。C、abstract不能与final同时修饰一个类。D、abstract方法必须在abstract类中声明,但abstract类定义中可以没有abstract方法。12.若需要定义一个类域或类方法,应使用哪种修饰符?()A、staticB、packageC、privateD、public13.若在某一个类定义中定义有如下的方法:abstractvoidperformDial();该方法属于()。A、本地方法B、最终方法C、解态方法D、抽象方法14.下列关于静态初始化器的叙述中,哪一个是正确的?()A、静态初始化器是在构造函数之前加上static修饰符。B、静态初始化器是对类自身进行初始化。C、静态初始化器在同一个类中只能有一个。D、静态初始化器是在其所属的类加载内存时由系统自动调用执行。15.不使用static修饰符限定的方法称为对象(或实例)方法,下列哪一个说法是正确的?()A、实例方法可以直接调用父类的实例方法。B、实例方法可以直接调用父类的类方法。C、实例方法可以直接调用其他类的实例方法。D、实例方法可以直接调用本类的类方法。16.设有下面两个类的定义:classPerson{classStudentextendsPerson{longid;//身份证号intscore;//入学总分Stringname;//姓名intgetScore(){}returnscore;}}问:类Person和类Student的关系是()。A、包含关系B、继承关系C、关联关系D、无关系,上述类定义有语法错误17.设有下面的两个类定义:classAA{voidShow(){System.out.println(我喜欢Java!);}classBBextendsAA{voidShow(){System.out.println(我喜欢C++!);}则顺序执行如下语句后输出结果为:()AAa;BBb;a.Show();b.Show();A、我喜欢Java!B、我喜欢C++!我喜欢C++!我喜欢Java!C、我喜欢Java!D、我喜欢C++!我喜欢Java!我喜欢C++!18.设有下面的一个类定义:classAA{staticvoidShow(){System.out.println(我喜欢Java!);}}classBB{voidShow(){System.out.println(我喜欢C++!);}}若已经使用AA类创建对象a和BB类创建对象b,则下面哪一个方法调用是正确的:()A、a.Show()B、AA.Show();b.Show()BB.Show();C、AA.Show();D、a.Show();b.Show();BB.Show();19.在Java中,一个类可同时定义许多同名的方法,这些方法的形式参数的个数、类型或顺序各不相同,传回的值也可以不相同。这种面向对象程序特性称为()。A、隐藏B、覆盖C、重载D、Java不支持此特性20.对于构造函数,下列叙述正确的是()。A、构造函数也允许重载。B、子类无条件地继承父类的无参构造函数。C、子类不允许调用父类的构造函数。D、在同一个类中定义的重载构造函数可以相互调用。21.在使用interface声明一个接口时,只可以使用()修饰符修饰该接口。A、privateB、protectedC、privateprotectedD、public22.设有下面两个赋值语句:a=Integer.parseInt(1024);b=Integer.valueOf(1024).intValue();下述说法正确的是()。A、a是整数类型变量,b是整数类对象。B、a是整数类对象,b是整数类型变量。C、a和b都是整数类对象并且它们的值相等。D、a和b都是整数类型变量并且它们的值相等。23.在JavaApplet程序用户自定义的Applet子类中,常常重载()方法在Applet的界面中显示文字、图形和其它界面元素。A、start()B、stop()C、init()D、paint()24.下面的语句的作用是:()。VectorMyVector=newVector(100,50);A、创建一个数组类对象MyVector,有100个元素的空间,每个元素的初值为50。B、创建一个向量类对象MyVector,有100个元素的空间,每个元素的初值为50。C、创建一个数组类对象MyVector,有100个元素的空间,若空间使用完时,以50个元素空间单位递增。D、创建一个向量类对象MyVector,有100个元素的空间,若空间使用完时,以50个元素空间单位递增。25.在Java中,存放字符串常量的对象属于()类对象。A、CharacterB、StringC、StringBufferD、Vector26.在Java中,开发图形用户界面的程序需要使用一个系统提供的类库,这个类库就是()包。A、java.ioB、java.awtC、java.appletD、java.awt.event27.在Java图形用户界面编程中,若显示一些不需要修改的文本信息,一般是使用()类的对象来实现。A、LabelB、ButtonC、TextAreaD、TextField28.创建一个标识有关闭按钮的语句是()。A、TextFieldb=newTextField(关闭);B、Labelb=newLabel(关闭);C、Checkboxb=newCheckbox(关闭);D、Buttonb=newButton(关闭);29.在编写异常处理的Java程序中,每个catch语句块都应该与()语句块对应,使得用该语句块来启动Java的异常处理机制。A、if-elseB、switchC、tryD、throw30.在编写JavaApplet程序时,若需要对发生的事件作出响应和处理,一般需要在程序的开头写上()语句。A、importjava.awt.*;B、importjava.applet.*;C、importjava.io.*;D、importjava.awt.event.*;31.对于子类的构造函数说明,下列叙述中不正确的是()。A、子类无条件地继承父类的无参构造函数。B、子类可以在自己的构造函数中使用super关键字来调用父类的含参数构造函数,但这个调用语句必须是子类构造函数的第一个可执行语句。C、在创建子类的对象时,将先执行继承自父类的无参构造函数,然后再执行自己的构造函数。D、子类不但可以继承父类的无参构造函数,也可以继承父类的有参构造函数。32.Java语言是()。A.面向问题的解释型高级编程语言B.面向机器的低级编程语言C.面向过程的编译型高级编程语言D.面向对象的解释型高级编程语言33.下列的变量定义中,错误的是()。A)inti;B)inti=Integer.MAX_VALUE;C)staticinti=100;D)int123_$;34.以下的变量定义语句中,合法的是()。A)float$_*5=3.4F;B)byteb1=15678;C)doublea=Double.MAX_VALUE;D)int_abc_=3721L;35.以下字符常量中不合法的是()。A)'|'B)'\''C)\nD)'我'36.下列程序段执行后t5的结果是()。intt1=9,t2=11,t3=8;intt4,t5;t4=t1t2?t1:t2+t1;t5=t4t3?t4:t3;A)8B)20C)11D)937.设a,b,c,d均为int型的变量,并已赋值,下列表达式的结果属于非逻辑值的是()。A)a!=b&c%daB)a++==a+b+c+dC)++a*b--+dD)a+b=c+d38.以下由do-while语句构成的循环执行的次数是()。intk=0;do{++k;}while(k1);A)一次也不执行B)执行1次C)无限次D)有语法错,不能执行39.下列语句序列执行后,k的值是()。intj=8,k=15;for(inti=2;i!=j;i++){j-=2;k++;}A)18B)15C)16D)1740.下列语句序列执行后,j的值是()。intj=3,i=2;while(--i!=i/j)j=j+2;A)2B)4C)6D)541.下列语句序列执行后,k的值是()。intx=6,y=10,k=5;switch(x%y){case0:k=x*y;case6:k=x/y;case12:k=x-y;default:k=x*y-x;}A)60B)54C)0D)542.下列语句序列执行后,a的值是()。inta=13;a%=a/5;A)3B)13C)1D)16943.既能作为类的修饰符,也能作为类成员的修饰符的是()。A)publicB)extendsC)FloatD)static44.下列选项中,用于定义接口的关键字是()。A)importB)implementsC)interfaceD)protected45.下列类头定义中,错误的是()。A)classx{....}B)publicxextendsy{....}C)publicclassxextendsy{....}D)classxextendsyimplementsy1{....}46.下列选项中,用于在定义类头时声明父类名的关键字是()。A)returnB)interfaceC)extendsD)class47.设i,j为类x中定义的doub