Java期末考试习题库(选择题+填空题+改错题学生)(45页).doc
-Java期末考试习题库(选择题+填空题+改错题学生)-第 44 页一、选择题1、下面关于变量及其作用范围的陈述哪个是不对的?(B ) A实例变量是类的成员变量。B实例变量用关键字static声明。C在方法中定义的局部变量在该方法被执行时创建。D局部变量在使用前必须被初始化。2、下面哪条语句把方法声明为抽象的公共方法?( B )Apublic abstract method();Bpublic abstract void method();Cpublic abstract void method()Dpublic void method() extends abstract;3、哪个是将一个十六进制值赋值给一个long型变量?( D )Along number = 345L;Blong number = 0345;Clong number = 0345L;Dlong number = 0x345L;4、下面的哪个赋值语句是不对的?( A )Afloat f = 11.1;Bdouble d = 5.3E12;Cdouble d = 3.14159;Ddouble d = 3.14D;5、下面哪个是不合法的标识符?( C )A$persons;BTwoUsers;C*point;D_endline;6、若在某一个类定义中定义有如下的方法: final void aFinalFunction( );则该方法属于( C )。A、本地方法 B、静态方法 C、最终方法 D、抽象方法7、main方法是Java Application程序执行的入口点,关于main方法的方法头以下哪项是合法的( B )。A、 public static void main()B、 public static void main(String args)C、 public static int main(String args)D、public void main(String arg )8、在Java中,一个类可同时定义许多同名的方法,这些方法的形式参数个数、类型或顺序各不相同,传回的值也可以不相同。这种面向对象程序的特性称为( C )。A、隐藏 B、覆盖 C、重载 D、Java不支持此特性10、以下代码段执行后的输出结果为( C )。int x=-3; float y=10.0f;System.out.println(y%x);A、不能成功编译 B、-1.0 C、1.0 D、-111、下列关于构造方法的叙述中,错误的是( C )AJava语言规定构造方法名与类名必须相同BJava语言规定构造方法没有返回值,但不用void声明CJava语言规定构造方法不可以重载DJava语言规定构造方法只能通过new自动调用12、关于被私有访问控制符private修饰的成员变量,以下说法正确的是(C )A可以被三种类所引用:该类自身、与它在同一个包中的其他类、在其他包中的该类的子类B可以被两种类访问和引用:该类本身、该类的所有子类C只能被该类自身所访问和修改D只能被同一个包中的类访问13、执行完以下代码int x = new int10;后,以下哪项说明是正确的( A )Ax9为0 Bx9未定义 Cx10为0 Dx0为空14、类Test1定义如下:1. public class Test12 public float aMethod(float a, float b) 34 将以下哪种方法插入行3是不合法的。( B )A、public float aMethod(float a, float b,float c) B、public float aMethod(float c,float d) C、public int aMethod(int a, int b) D、private float aMethod(int a,int b,int c) 15、阅读以下代码: public class foopublic static void main (String args)String s;System.out.println("s=" + s);输出结果应该是:( C )A代码得到编译,并输出“s=” B代码得到编译,并输出“s=null” C由于String s没有初始化,代码不能编译通过D代码得到编译,但捕获到 NullPointException异常16、下述概念中不属于面向对象方法的是( D )。A对象、消息 B继承、多态 C类、封装 D过程调用17、编译并运行以下程序,以下描述哪个选项是正确的( A )。1. class A2.protected String toString()3.return super.toString();4.A、行2出错,不能成功编译 B、编译通过但运行时出错C、编译通过运行无异常 D、不能成功编译,行3出错18、假设Foo类有如下定义,设f是Foo类的一个实例,下列语句调用哪个是错误的?( A )public class Fooint i;static String s;void imethod() static void smethod() A、Foo.imethod(); B、f.imethod();C、System.out.println(f.i); D、Foo.smethod()19、以下哪个接口的定义是正确的?( D )A、 interface A void print() ;B、 abstract interface A void print() ;C、 abstract interface A extends I1, I2 / I1、I2为已定义的接口 abstract void print() ;D、 interface A void print();20、关于以下程序段,正确的说法是( C )1 String s1=“a”+“b”;2 String s2=new String(s1);3 if(s1=s2)4 System.out.println(“= = is succeeded”);5 if (s1.equals(s2)6 System.out.println(“.equals() is succeeded”);A行4与行6都将执行 B行4执行,行6不执行C行6执行,行4不执行 D行4、行6都不执行21、下列哪些标识符是不合法的?( B )A: _underscoreB: 5IntelC: Intel5 D: $value$ 22、对数组的定义及初始化不正确的方法是:( B ) Aint array; Bint array8; Cint array=new int8; Dint array=new int8; 23、下面哪个表达式正确?( D ) Afloat f=1.3; Bchar c="a" Cbyte b=257; Dint i=10;24、下面程序运行结果为:(D,如果输出count则为A)public class test3public static void main(String args) int count=0; for (int i=0;i<=100;i+) count+=count+; A 0 B 7 c 编译有错误 D 其他答案25、下面哪个函数是public void aMethod().的重载函数?(D)A、void aMethod( ).B、public int aMethod().C、public void aMethod ( ).D、public int aMethod ( int m).26、下面关于继承的哪些叙述是正确的? ( D )A在java中允许多继承。 B 在java中一个类只能实现一个接口。 C 在java中一个类不能同时继承一个类和实现一个接口。 D java的单一继承使代码更可靠。27、关于length()这个方法的表述正确的是哪个? ( C )A数组有length()这个方法,string也有length()这个方法。 B数组有length()有这个方法,string没有length()这个方法。C数组没有length()这个方法,string有length()这个方法。D数组没有length()这个方法,string也没有length()这个方法。28、运行下面程序段的结果是:( C )。public class MyMain public static void main(String args) System.out.println(“Hello Java”);A正常输出Hello JavaB编译时出错C运行时出错D. 以上答案都不对29、选择排序的思想是,将数据序列划分为两个子列,一个子列是排好序的,另一个是尚未排序的。现若想将数据序列由小到大排序,则每次放到有序子列尾部位置的元素,应从无序序列中选择(A )。A)最大的 B)最小的 C)任意的 D)头上的30、关于以下程序段,正确的说法是( C )。1 String s1=“x”+“y”;2 String s2=new String(s1);3 if(s1=s2)4 System.out.println(“= = is succeeded”);5 if (s1.equals(s2)6 System.out.println(“.equals() is succeeded”);A行4与行6都将执行 B行4执行,行6不执行C行6执行,行4不执行 D行4、行6都不执行31、类与对象的关系是( A )。 A. 类是对象的抽象 B. 类是对象的具体实例 C. 对象是类的抽象 D. 对象是类的子类32、下列关于修饰符混用的说法,错误的是( D ) A. abstract不能与final并列修饰同一个类 B. abstract类中不可以有private的成员 C. abstract方法必须在abstract类中 D. static方法中能处理非static的属性33、编译并运行下述程序段的结果是:( B )。public class Test public static void main(String argv) int count = new int4; System.out.println(count4);A编译时错误B运行时错误C输出0D输出null34、下面是有关子类继承父类构造函数的描述,其中正确的是( B )。A创建子类的对象时, 先调用子类自己的构造函数,然后调用父类的构造函数。B子类无条件地继承父类不含参数的构造函数。C子类必须通过super关键字调用父类的构造函数。D子类无法继承父类的构造函数。35、下列类的定义中,错误的是( C )。A class x . B public x extends y . Cpublic class x extends y . D class x extends y implements y1 . 36、假设A类有如下定义,设a是A类的一个实例,下列语句调用哪个是错误的?( C )class Aint i;static String s;void method1() static void method2() A、System.out.println(a.i);B、a.method1(); C、A.method1(); D、A.method2()38、假设A类有如下定义,设a是A类的一个实例,下列语句调用哪个是错误的?( C )class Aint i;static String s;void method1() static void method2() A、System.out.println(a.i);B、a.method1(); C、A.method1(); D、A.method2()39、A派生出子类B ,B派生出子类C,并且在Java源代码中有如下声明: 1. A a0=new A();2. A a1 =new B();3. A a2=new C();问以下哪个说法是正确的? ( D )A、只有第1行能通过编译 B、第1、2行能通过编译,但第3行编译出错C、第1、2、3行能通过编译,但第2、3行运行时出错D、第1行、第2行和第3行的声明都是正确的 40、以下哪个接口的定义是正确的?( D )A、 interface B void print() ;B、 abstract interface B void print() ;C、 abstract interface B extends A1,A2 /A1、A2为已定义的接口 abstract void print() ;D、 interface B void print();41、下面的哪个赋值语句是正确的?( D )A、 short myshort=99s;B、 String name=Excellent;C、 char c=17c;D、 int z=015;42、下面哪个不是Java的保留字或关键字?( B )A、 defaultB、 NULLC、 throwsD、 long 43、下面哪个是Math类中正确的方法?( A )A、 random()B、 Random()C、 square()D、 sqr()44、编译并运行以下程序段的结果是:( )public static void main(String args )Frame f=new Frame (“Visual”);f.setSize(300,300);f.setVisible(true);Point p=f.getLocation();System.out.println(“x is ”+ p.x);System.out.println(“y is ”+ p.y);A、x is 300 y is 300B、x is 0 y is 0C、x is 0 y is 300D、x is 300 y is 045、下面哪个不是Thread类的方法?( C )A、 yield()B、 sleep(long msec)C、 go()D、 stop()46、下面哪个不是Collection接口的方法?( D )A、 iteratorB、 isEmptyC、 toArrayD、 setText47、下面哪个不是String类的方法?( C )A、 subString()B、 startsWith()C、 toString()D、 toUpperCase() 48、 编译并运行以下程序段的结果是:( A i是final ) public class MyClassfinal static int i;MyClass()i =0;public static void main(String args)System.out.println(i);A、 编译出错B、 nullC、 1D、 049、下面哪条语句是正确的?( D )A: short snum = 99s;B: String name = Class Name is: 03076;C: char c = 17c;D: float f = 3.4f;50、下面哪个语句(初始化数组)是不正确的:( B )A: int x = 1,2,3;B: int x3 = 1,2,3;C: int x = 1,2,3;D: int x = new int1,2,3;51、下面方法中的“返回类型Type”应该是什么? ( D )public class ReturnIt returnType methodA(byte x, double y) return (short)x / y * 2; A. double B. int C. byte D. short52、下面哪一个表达式是正确的? ( C )A、 byte=128; B、 Boolean=null; C、 long l=0xfffL; D、 double=0.9239d; 53、下面哪个修饰符修饰的变量是所有同一个类生成的对象共享的?( C )A、publicB、privateC、staticD、final54、下面关于java中类的说法哪个是不正确的?( C )A、类体中只能有变量定义和成员方法的定义,不能有其他语句。B、构造函数是类中的特殊方法。C、类一定要声明为public的,才可以执行。D、一个java文件中可以有多个class定义。55、下列哪个类声明是正确的? ( D ) A、 abstract final class H1B、 abstract private move()C、 protected private number;D、 public abstract class Car56、方法重载是指 (A ) A.两个或两个以上的方法取相同的方法名,但形参的个数或类型不同B.两个以上的方法取相同的名字和具有相同的参数个数,但形参的类型可以不同C.两个以上的方法名字不同,但形参的个数或类型相同D.两个以上的方法取相同的方法名,并且方法的返回类型相同 59、哪个布局管理器使用的是组件的最佳尺寸? ( A ) A. FlowLayout B. BorderLayout C. GridLayout D. CardLayout 60、Frame的默认的布局管理器是下列哪一个? ( B ) A.FlowLayoutB.BorderLayout C.GridLayoutD.CardLayout61、下列哪个用户图形界面组件在软件安装程序中是常见的? ( B )A.滑块B.进度条C.对话框D.标签62、 包含可单击按钮的类的Java类库是哪个? CA.AWTB.SwingC.二者都有D.二者都没有63、下面的哪个用户界面组件不是容器? ( D )A. JScrollPaneB. JFrameC. JWindowsD. JScrollBar64、在下列事件处理机制中哪个不是机制中的角色? ( C ) A. 事件B. 事件源C. 事件接口D. 事件处理者65.欲构造ArrayList类的一个实例,此类继承了List接口,下列哪个方法是正确的 ( B ) A、 ArrayList myList=new Object(); B、 List myList=new ArrayList(); C、 ArrayList myList=new List(); D、 List myList=new List();67.指出正确的表达式 ( C )A、 byte=128; B、 Boolean=null; C、 long l=0xfffL; D、 double=0.9239d; 68.指出下列程序运行的结果 ( B )public class Example String str=new String("good"); charch='a','b','c' public static void main(String args) Example ex=new Example(); ex.change(ex.str,ex.ch); System.out.print(ex.str+" and "); Sytem.out.print(ex.ch); public void change(String str,char ch) str="test ok" ch0='g' A、 good and abc B、 good and gbc C、test ok and abc D、 test ok and gbc 69.运行下列程序, 会产生什么结果 ( A 应该是runnable )public class X extends Thread implements Runable public void run() System.out.println("this is run()"); public static void main(String args) Thread t=new Thread(new X(); t.start(); A、 第一行会产生编译错误 B、 第六行会产生编译错误 C、 第六行会产生运行错误 D、 程序会运行和启动 71.容器被重新设置大小后,哪种布局管理器的容器中的组件大小不随容器大小的变化而改变? ( B )A、 CardLayout B、 FlowLayout C、 BorderLayout D、 GridLayout 72.给出下面代码: public class Person static int arr = new int10;public static void main(String a) System.out.println(arr1); 那个语句是正确的? ( C )A、 编译时将产生错误; B、 编译时正确,运行时将产生错误; C 、输出零; D、 输出空。 74.下列哪些语句关于内存回收的说明是正确的? ( D )A、 程序员必须创建一个线程来释放内存; B、 内存回收程序负责释放无用内存 C、内存回收程序允许程序员直接释放内存 D、内存回收程序可以在指定的时间释放内存对象 75.下列代码哪几行会出错: ( C )1) public void modify() 2) int I, j, k; 3) I = 100; 4) while ( I > 0 ) 5) j = I * 2; 6) System.out.println (" The value of j is " + j ); 7) k = k + 1; 8) I-; 9) 10 A、 line 4 B、 line 6 C、 line 7 D、 line 876.MAX_LENGTH是int型public成员变量, 变量值保持为常量100,用简短语句定义这个变量。 ( D )A、 public int MAX_LENGTH=100; B、 final int MAX_LENGTH=100; C、 final public int MAX_LENGTH=100; D、 public final int MAX_LENGTH=100. 77.给出下面代码:1) class Parent 2 private String name; 3 public Parent() 4 5) public class Child extends Parent 6 private String department; 7 public Child() 8 public String getValue() return name; 9 public static void main(String arg) 10 Parent p = new Parent(); 11 12 那些行将引起错误? ( D )A、 第3行 B、 第6行 C、 第7行 D、 第8行78.类Teacher和Student是类Person的子类; Person p; Teacher t; Student s; /p, t and s are all non-null. if(t instanceof Person) s = (Student)t; 最后一句语句的结果是: ( D )A、 将构造一个Student对象; B、 表达式是合法的; C、 表达式是错误的; D、 编译时正确,但运行时错误。 79.给出下面代码段 1) public class Test 2 int m, n; 3 public Test() 4 public Test(int a) m=a; 5 public static void main(String arg) 6 Test t1,t2; 7 int j,k; 8 j=0; k=0; 9 t1=new Test(); 10 t2=new Test(j,k); 11 12 哪行将引起一个编译时错误?( D ) A、 line 3 B、 line 5 C、 line 6 D、 line 10 80.对于下列代码: 1) class Person 2 public void printValue(int i, int j) /. 3 public void printValue(int i)/. 4 5) public class Teacher extends Person 6 public void printValue() /. 7 public void printValue(int i) /. 8 public static void main(String args) 9 Person t = new Teacher(); 10 t.printValue(10); 11 第10行语句将调用哪行语句? ( D )A、 line 2 B、 line 3 C、 line 6 D、 line 781.哪个关键字可以抛出异常? ( C )A、 transient B、 finally C、 throw D、 static 82.Main()方法的返回类型是: ( B )A、 int B、 void C、 boolean D、 static 83.System类在哪个包中? ( D )A、 java.util B、 java.io C、 java.awt D、 java.lang84.对于下列代码: public class Parent public int addValue( int a, int b) int s; s = a+b; return s; class Child extends Parent 下述哪些方法可以加入类Child? ( C )A、 int addValue( int a, int b )/ do something. B、 public void addValue (int a, int b )/ do something. C、 public int addValue( int a )/ do something. D、 public int addValue( int a, int b )throws MyException /do something. 85.给出下面代码: public class test static int a = new a10; public static void main(String args) System.out.println(arr10); 那个选项是正确的? ( C )A、 编译时将产生错误; B、 编译时正确,运行时将产生错误; C、 输出零; D、 输出空。 86.下面哪些选项是正确的main方法说明? ( B )A、 public main(String args) B、 public static void main(String args) C、 private static void main(String args) D、 void main() 87.给定下面的代码片段: 1) String str = null; 2) if (str != null) && (str.length() > 10) 3 System.out.println("more than 10"); 4 5) else if (str != null) & (str.length() < 5) 6 System.out.println("less than 5"); 7 8) else System.out.println("end"); 哪些行会导致错误? ( C )A、 line 1 B、 line 2 C、 line 5 D、 line 8 88.下面哪种注释方法能够支持javadoc命令: ( B )A、 /*.*/ B、 /*.*/ C、 / D、 /*.*/ 93.看下面一段程序: class Aclass void go() System.out.println("Aclass"); public class Bclass extends Aclass void go System.out.println("Bclass"); public static void main(String args) Aclass a=new Aclass(); Aclass a1=new Bclass(); a.go(); a1.go(); 以上程序运行结果是: CA、 Aclass Aclass B、 Bclass Bclass C、 Aclass Bclass D、 Bclass Aclass 94.下列关于Java线程的说法那些是正确的( D ) A、 每一个Java线程可以看成由代码、一个真实的CPU以及数据三部份组成。 B、 创建线程的两种方法中,从Thread类中