当前位置:文档之家› java数据库笔试题答案在最后)

java数据库笔试题答案在最后)

Java、数据库测试题(笔试)测试时间:90分钟姓名:_______ 总分:_______一、不定项选择题(40题,每题2分,总分80分)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();}}A) 编译错误B) 运行错误C) 1D) 22) 当编译并运行下面程序时会出现什么结果( )(单选)public class MyAr{public static void main(String argv[]){int[] i = new int[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++){}}}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 ++){}}}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);}}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;}}A) 编译并输出0B) 编译错误C) 编译并输出nullD) 运行错误11) 给定如下java代码程序片断:class A{public A(){“A”);}}class B extends A{public B(){“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();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){}}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);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) 启动一个线程,应调用什么方法()。

(单选)A) start()B) run()C) begin()D) notify)(27) 在java中,已定义两个接口B和C,要定义一个实现这两个接口的类,以下语句正确的是( )(单选)A) interface A extends B,CB) interface A implements B,CC) class A implements B,CD) class A implements B,implements C28) 在Java中,以下定义数组的语句正确的是( )(单选)A) int t[10]=new int[];B) char a[]="hefg";C) int t[]=new int[10];D) double d=new double[10];29) 给定一个java程序的main方法的代码片段如下:假如d目录下不存在abc.txt文件,现运行该程序,下面的结果正确的是():(单选)try{PrintWriter out =new PrintWriter(new FileOutputStream("d:/abc.txt"));String name="chen";out.print(namE);}catch(Exception E){}A) 将在控制台上打印:"文件没有发现!"B) 正常运行,但没有生成文件abc.txtC) 运行后生成abc.txt,但该文件中可能无内容D) 运行后生成abc.txt,该文件内容为:chen30) 集合框架中,要实现对集合里的元素进行自定义排序,要实现哪个接口()(单选)A) CloneableB) RunnableC) SerializableD) Comparator31) class Super{protected float getNum(){return 3.0f;}}public class Sub extends Super{//Here}下面哪些代码可放在Here处(多选)A) float getNum(){return 4.0f;}B) public void getNum(){}C) private void getNum(double D){}D) public double Getnum(){return 4.0d;}E) public float getNum(){return 9;}32) 在Java语言中,如果你编写一个多线程序,可以使用的方法是()。

相关主题