1、中软Java笔试题doc中软Java笔试题一、判断题(30分)1Java程序里,创建新的类对象用关键字new,回收无用的类对象使用关键字free。2对象可以赋值,只要使用赋值号(等号)即可,相当于生成了一个各属性与赋值对象相同的新对象。3有的类定义时可以不定义构造函数,所以构造函数不是必需的。4类及其属性、方法可以同时有一个以上的修饰符来修饰。5Java的屏幕坐标是以像素为单位,容器的左下角被确定为坐标的起点6抽象方法必须在抽象类中,所以抽象类中的方法都必须是抽象方法。7Final类中的属性和方法都必须被final修饰符修饰。8最终类不能派生子类,最终方法不能被覆盖。9子类要调用父类的方法,必
2、须使用super关键字。10一个Java类可以有多个父类。11如果p是父类Parent的对象,而c是子类Child的对象,则语句c = p是正确的。12在java集合中,Vector和HashMap是线程安全的。13当一个方法在运行过程中产生一个异常,则这个方法会终止,但是整个程序不一定终止运行。14接口是特殊的类,所以接口也可以继承,子接口将继承父接口的所有常量和抽象方法。15用“+”可以实现字符串的拼接,用- 可以从一个字符串中去除一个字符子串。二、选择题(30分)1、关于垃圾收集的哪些叙述是正确的( ):A程序开发者必须自己创建一个线程进行内存释放的工作B垃圾收集允许程序开发者明确指定并
3、立即释放该内存C垃圾收集将检查并释放不再使用的内存D垃圾收集能够在期望的时间释放被java对象使用的内存2、下面的哪些赋值语句是不正确的( ):Afloatf=11.1;Bdoubled=5.3E12;Cdoubled=3.14159;Ddoubled=3.14D;3、下面关于变量及其范围的陈述哪些是不正确的( ):A实例变量是类的成员变量B实例变量用关键字static声明C在方法中定义的局部变量在该方法被执行时创建D局部变量在使用前必须被初始化4、下列关于修饰符混用的说法,错误的是( ):Aabstract不能与final并列修饰同一个类Babstract类中不可以有private的成员Ca
4、bstract方法必须在abstract类中Dstatic方法中能处理非static的属性5、容器Panel和Applet缺省使用的布局编辑策略是( ):A、BorderLayout B、FlowLayout C、GridLayout D、CardLayout6、以下标识符中哪项是不合法的( ):A、 BigMeaninglessName B、$intC、1 st D、$17、main方法是Java Application程序执行的入口点,关于main方法的方法头以下哪项是合法的( ):A、public static void main()B、public static void main(S
5、tring args)C、public static int main(String arg)D、public void main(String arg )8、执行完以下代码int x = new int25;后,以下哪项说明是正确的( ):A、x24为0B、x24未定义C、x25为0D、x0为空9、以下代码段执行后的输出结果为( ):int x=3; int y=10;System.out.println(y%x);A、0B、1C、2D、310、以下哪个表达式是不合法的( ):A、String x=”Hello”; int y=9; x+=y;B、String x=”Hello”; int
6、y=9; if(x= =y) C、String x=”Hello”; int y=9; x=x+y;D、String x=null; int y=(x!=null)&(x.length()0) ? x.length : 011、编译运行以下程序后,关于输出结果的说明正确的是 ( ):public class Conditionalpublic static void main(String args )int x=4;System.out.println(“value is “+ (x4) ? 99.9 :9);A、输出结果为:value is 99.99B、输出结果为:value is 9C
7、、输出结果为:value is 9.0D、编译错误12、以下声明合法的是( ):A、default String s;B、public final static native int w( )C、abstract double d;D、abstract final double hyperbolicCosine( )13、关于以下application的说明,正确的是( ):1class StaticStuff23 static int x=10;4 static x+=5;5 public static void main(String args )6 7 System.out.printl
8、n(“x=” + x);8 9 static x/=3;10. A、4行与9行不能通过编译,因为缺少方法名和返回类型B、9行不能通过编译,因为只能有一个静态初始化器C、编译通过,执行结果为:x=5D、编译通过,执行结果为:x=314、关于以下程序代码的说明正确的是( ):1class HasStatic2 private static int x=100;3 public static void main(String args )4 HasStatic hs1=new HasStatic( );5 hs1.x+;6 HasStatic hs2=new HasStatic( );7 hs2.x
9、+;8 hs1=new HasStatic( );9 hs1.x+;10 HasStatic.x- -;11 System.out.println(“x=”+x);12 13A、5行不能通过编译,因为引用了私有静态变量B、10行不能通过编译,因为x是私有静态变量C、程序通过编译,输出结果为:x=103D、程序通过编译,输出结果为:x=10215、以下选项中循环结构合法的是( ):A、while (int i7)i+;System.out.println(“i is “+i);B、int j=3;while(j)System.out.println(“ j is “+j);C、int j=0;f
10、or(int k=0; j + k !=10; j+,k+)System.out.println(“ j is “+ j + “k is”+ k);D、int j=0;doSystem.out.println( “j is “+j+);if (j = = 3) continue loop;while (j10);三、简答题(40分)1.写出下列程序的运行结果public class Catvoid mi( ) throws NullPointerExceptionSystem.out.println( “Cat mi mi . “ );public class SmallCat extends
11、 Catint i=8;void mi( ) throws ExceptionSystem.out.println( “SmallCat mi mi . “ );public static void main( String a ) throws ExceptionCat cat = new SmallCat();cat.mi();写出下列程序的运行结果interface Playable void play();interface Bounceable void play();interface Rollable extends Playable, Bounceable Ball ball
12、= new Ball(“PingPang”);class Ball implements Rollable private String name;public String getName() return name;public Ball(String name) this.name = name;public void play() ball = new Ball(“Football”);System.out.println(ball.getName();写出下列程序的运行结果class Valuepublic int i = 15;public class Testpublic sta
13、tic void main(String argv)Test t = new Test();t.first();public void first()int i = 5;Value v = new Value();v.i = 25;second(v, i);System.out.println(v.i);public void second(Value v, int i)i = 0;v.i = 20;Value val = new Value();v = val;System.out.println(v.i + ” ” + i);写出下列程序的运行结果class MyThread extend
14、s Threadpublic void run()System.out.println(“MyThread: run()”);public void start()System.out.println(“MyThread: start()”);class MyRunnable implements Runnablepublic void run()System.out.println(“MyRunnable: run()”);public void start()System.out.println(“MyRunnable: start()”);public class MyTest public static void main(String args)MyThread myThread = new MyThread();MyRunnable myRunnable = new MyRunnable();Thread thread = new Thread(myRunnable);myThread.start();thread.start();2.1100共一百个自然数,放入一个99个元素的数组a99,要求用java语言编写出一个尽量简单的程序,找出没有被放入数组的这个数。3.简要叙述一下什么是数据库连接池,有何作用。4.简要描述Struts,spring,hibernate?