当前位置:文档之家› JAVA笔试题答案在最后

JAVA笔试题答案在最后

测试题(笔试)Java 面向对象重庆足下科技有限公司不定项选择题(40题,每题2.5分,总分100分,测试时间2小时)1) 当试图编译并运行下面程序时会出现什么结果()(单选)class A{public int getNumber(int a){return a+1;}}class B extends A{public int getNumber(int a, char c){return a+2;}public static void main(String[] args){B b=new B();System.out.println(b.getNumber(0));}}a) 编译错误b) 运行错误c) 1d) 22) 当编译并运行下面程序时会出现什么结果( )(单选)public class MyAr{public static void main(String argv[]){int[] i = new int[5];System.out.println(i[5]);}}a) 编译错误b) 运行错误c) 输出0d) 输出“null”3) final、finally、finalize三个关键字的区别是()(多选)a) final是修饰符(关键字)可以修饰类、方法、变量b) finally在异常处理的时候使用,提供finally块来执行任何清除操作c) finalize是方法名,在垃圾收入集器将对象从内存中清除出去之前做必要的清理工作d) finally和finalize一样都是用异常处理的方法4) 当编译并运行下面程序时会发生什么结果()(单选)public class Bground extends Thread{public static void main(String argv[]){Bground b = new Bground();b.run();}public void start(){for (int i = 0; i <10; i++){System.out.println("Value of i = " + i);}}}a) 编译错误,指明run方法没有定义b) 运行错误,指明run方法没有定义c) 编译通过并输出0到9d) 编译通过但无输出5) 在Java中,如果父类中的某些方法不包含任何逻辑,并且需要由子类重写,应该使用()关键字来声明父类的这些方法。

(单选)a) Finalb) Staticc) Abstractd) Void6) 当编译并运行下面程序时会发生什么结果:(单选)public class Hope{public static void main(String argv[]){Hope h = new Hope();}protected Hope(){for(int i =0; i <10; i ++){System.out.println(i);}}}a) 编译错误,构造方法不能被声明为protectedb) 运行错误,构造方法不能被声明为protectedc) 编译并运行输出0到10d) 编译并运行输出0到97) 下列说法正确的是?()(多选)a) 数组有length()方法b) String有length()方法c) 数组有length属性d) String有length属性8) 当编译并运行下面程序时会发生什么结果?( )(单选)public class Test{public static void stringReplace(String text){text=text+”c”;}public static void bufferReplace(StringBuffer text){text=text.append("c");}public static void main(String args[]){String textString=new String("java");StringBuffer textBuffer=new StringBuffer("java");stringReplace(textString);bufferReplace(textBuffer);System.out.println(textString+textBuffer);}}a) 编译并运行输出javac javacb) 编译并运行输出java javac) 编译并运行输出java javacd) 编译并运行输出javac java9) 以下哪些表达式返回为真()(多选)String a=”My field1”;String b=”My field1”;String c=new String(”My field1”);String d=new String(”My field1”);a) a ==bb) a==cc) c==dd) a.equals(b)e) a.equals(c)f) c.equals(d)10) 当编译和运行下面程序时,哪项描述可以最准确的表达发生了什么事情( )(单选)public class MyAr{public static void main(String argv[]) {MyAr m = new MyAr();m.amethod();}public void amethod(){int i;System.out.println(i);}}a) 编译并输出0b) 编译错误c) 编译并输出nulld) 运行错误11) 给定如下java代码程序片断:class A{public A(){System.out.println(“A”);}}class B extends A{public B(){System.out.println(“B”);}public static void main(String[] args){B b=new B();}}上述程序将()(单选)a) 不能通过编译b) 通过编译,输出为ABc) 通过编译,输出为Bd) 通过编译,输出为A12) 关于线程,以下说法正确的是:()(多选)a) sleep方法执行时会释放对象锁。

b) wait方法执行时会释放对象锁。

c) sleep方法必须写在同步方法或同步块中d) wait方法必须写在同步方法或同步块中13) 给定JAV A代码如下,编译运行后,输出结果是()(单选)public class test{static int i;public int test(){i++;return i;}public static void main(String args[]){Test test=new Test();test.test();System.out.println(test.test());}}a) 0b) 1c) 2d) 314) 给定JAV A代码如下,关于super的用法,以下描述正确的是( )(单选)class C extends B{public C(){super();}}a) 用来调用类B中定义的super()方法b) 用来调用类C中定义的super()方法c) 用来调用类B中的无参构造方法d) 用来调用类B中第一个出现的构造方法15) 哪些是Thread类中本身的方法(不包括继承)( )(多选)a) start()b) sleep(long mi)c) wait()d) notify()16) 下面哪些为真()(多选)a) 接口里可定义变量,并且变量的值不能修改b) 任何情况下,类都不能被private修饰c) 类可以被protected修饰d) 接口不能实例化17) 下面哪些是正确的描述了关键字synhronized ( )(单选)a) 允许两个进程并行运行但其之间相互通信b) 保证任何时候只有一个线程访问一个方法或对象c) 保证两个或多个进程同时启动和结束d) 保证两个或多个线程同时启动和结束18) 下列哪一种叙述是正确的()(单选)a) abstract修饰符可修饰属性、方法和类b) 抽象方法的body部分必须用一对大括号{ }c) 声明抽象方法,大括号可有可无d) 声明抽象方法不可写出大括号19) 下面关于网络通信正确的描述是()(多选)a) TCP/IP协议是一种不可靠的网络通信协议。

b) UDP协议是一种可靠的网络通信协议。

c) TCP/IP协议是一种可靠的网络通信协议。

d) UDP协议是一种不可靠的网络通信协议。

20) 在Java中,下面关于抽象类的描述正确的是()(多选)a) 抽象类可以被实例化b) 如果一个类中有一个方法被声明为抽象的,那么这个类必须是抽象类c) 抽象类的方法都必须是抽象的d) 声明抽象类必须带有关键字abstract21) 给定java代码如下,编译运行结果是()(单选)public class Test{public int count(){return 1%9;}public static void main(String[]args){System.out.println(count());}}a) 编译错误b) 运行错误c) 正常运行,输出1d) 正常运行,输出022) 将对象序列化,要实现哪个接口()(单选)a) Cloneableb) Runnablec) Serializabled) Comparator23) 以下代码输出结果为( ) (单选)public class Test{public static String output="";public static void foo(int i){try {if(i==1){throw new Exception();}output +="1";} catch(Exception e){output+="2";return;} finally{output+="3";}output+="4";}public static void main(String args[]){foo(0);foo(1);System.out.println(output);}}a) 1342b) 123c) 134234d) 1342324) 在JAVA中,()接口位于集合框架的顶层( ) (单选)a) Collectionb) Collectionsc) Listd) Set25) 在Java中,下列()类不能派生出子类( ) (单选)a) public class MyClass{}b) class MyClass{}c) abstract class MyClass{}d) final class MyClass{}26) 启动一个线程,应调用什么方法()。

相关主题