今天笔试了中移物联网的java开发实习岗位。一共33道题。

单选题

1.关于java注解,下列说法错误的是()

  A.注解用@interface定义  B.Target元注解可以用来控制注解作用范围  C.注解类中的方法有且仅有一个参数  D.注解类中的方法不能返回集合类

2.假设web应用的文档根目录为MyApp,那么可以从哪里找到datebase.jar文件()

A.MyApp目录下  B.MyApp\images目录下   C.MyApp\WEB-INF目录下  D.MyApp\WEB-INF\lib目录下

 3. 队列的特点是()

A.先进先出  B.后进先出  C.随机读取  D.顺序读取

4.在算法中要求使用java.util.List数据结构,该算法要求可以方便的添加“add”一个元素,但是不要求支持随机快速访问元素,请问你会选择下列哪个类?()

A.java.util.Queue  B.java.util.ArrayList  C.java.util.LinearList  D.java.util.LinkedList

5.下列哪个集合接口被用来按顺序存储可重复的元素?()

A.Set   B.List   C.Map    D.SorterSet

6.以下程序的输出()

class Atom{
 Atom(){
      System.out.print("atom");
    }
 }
 class Rock extends Atom{
       Rock(String type){
       System.out.print(type); 
    }
 }
 public class Mountain extends Rock {
       Mountain() {
            super("granite");
            new Rock("granite");
       }
 public static void main(String[] args) {
      new Mountain();
     }
 }

A.atom granite   B.granite granite   C.atom granite granite   D.atom granite atom granite

7.在java中用16进制数 表示23正确的是()

A.0x17   B.0x18   C.0x19  D.0x20

8.你怎么强制对一个对象立即进行垃圾收集?()

A.调用System.gc()    B.调用Runtime.gc()     C.给这个对象的所有引用设置一个新的值(例如null)  D.垃圾收集是不能被强迫立即执行

9.字符串"example"调用"substring(2,4)"的结果是什么?()

A."xa"   B."am"    C."xm"   D."xamp"

10.Main()方法的返回类型是:()

A.int    B.void    C.boolean   D.String

11.下面有关java按值传递和引用传递,说法错误的是()

A.char类型的传递属于按值传递    B.Array类型的传递属于按引用传递   C.用户自定义类型的传递属于按引用传递   D.String类型的传递属于引用传递

12.下列java代码输出结果为()

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.1342   B.123   C.134234    D.13423

13.java中,StringBuiler和StringBuffer的区别,下面说法错误的是()

A.StringBuffer是线程安全的   B.StringBuiler是非线程安全的   C.StringBuffer对String类型进行改变的时候其实都等同于生成一个新的String对象,然后将指针指向新的String对象    D.效率比较String<StringBuffer<StringBuiler,但是在String S1="This is only a"+"simple"+"test"时,String效率最高

14.在java中,一个类可同时定义许多同名的方法,这些方法的形式参数的个数、类型或顺序各不相同,传回的值也可以不相同。这种面向对象程序特性称为()

A.继承    B.覆盖    C.重载     D.java不支持此特性

15.下面代码运行结果为:()
 import java.io.*;
 import  java.util.*;
 public class foo{
     public static void main(String[] args){
      String s;
       System.out.println("s="+s);
      }
 }

A.代码得到编译,并输出"s="   B.代码得到编译,并输出"s=null"   C.由于String没有初始化,代码不能编译通过  D.代码得到编译,但捕获到NullPointException异常

16.关于sleep()和wait(),以下描述错误的一项是()

A.sleep是线程类(Thread)的方法,wait是Object类的方法   B.sleep不释放对象索,wait放弃对象锁   C.sleep暂停线程、但监控状态仍然保持,结束后自动恢复    D.wait进入等待锁定池,只有针对此对象发出notify方法获得对象锁进入运行状态

17.哪个关键字可以抛出异常?()

A.finally    B.throw    C.static    D.transient

18.下面程序运行结果:(B)

public static void main(String[] args){
        Thread t = new Thread(){
                   public void run(){
                          pong();
                  }
        };
         t.run();
         System.out.print("ping");
 }
 static void pong(){
        System.out.print("pong");
 }

A.pingpong     B.pongping      C.pingpong和pongping都有可能    D.都不输出

19.如下哪个不是java的关键字?()

A.const     B.false     C.volatile    D.native

20.下列java代码输出结果为(C)。

static int arr[] = new int[10];
public static void main(String[] args){
    System.out.println(arr[1]);
}

A.编译 时将产生错误    B.编译时正确,运行时将产生错误      C.输出零     D.输出空

多选题

21.以下关于final关键字说法错误的是()

A.final是java中的修饰符,可以修饰类、接口、抽象类、方法和属性    B.final修饰的是类肯定不能被继承    C.final修饰的方法不能被重载    D.final修饰的变量不允许被再次赋值

22.下面哪些为真?()

A.接口可定义变量,并且变量的值不能修改    B.任何情况下,类都不能被private修饰   C.类可以被protected修饰   D.接口不能实例化

23.下面哪些是Thread类的方法?()

A.start()     B.run()     C.exit()    D.getPriority

24.下面对数组的操作代码哪个是正确的?()

A.char[] a ="hello world".toCharArray();    B.int len=a.length   C.char c=a[999]   D.char c=a[0]

25.在Java Web应用中,下面关于HttpSession的说法正确的是()

A.Servlet容器负责创建HttpSession对象   B.每个HttpSession对象都有唯一的ID    C.客户端浏览器负责为HttpSession分配唯一的ID    D.HttpSession对象的ID值,由程序员进行分配

26.不能用来修饰interface的有()

A.private     B.public     C.protected     D.static

27.下面关于方法的说法正确的是()。

A.构造方法不能被继承     B.构造方法不能被重写    C.构造方法不能被重载    D.构造方法不能被声明为private

28.下列属于关系数据库的是()

A.Oracle     B.MySql     C.IMS    D.MongDB

29.对于ConcurrentHashMap,以下说法正确的是()

A.并发访问时可以用来代替HashMap    B.使用了读写锁保证性能    C.它的每个方法都调用都是原子操作    D.一个线程调用clear()时,另外一个线程调用get()不会读取到数据

30.下面关于网络通信正确描述的是()。

A.TCP/IP协议是一种不可靠的网络通信协议    B.UDP协议是一种可靠的网络通信协议    C.TCP/IP协议是一种可靠的网络通信协议   D.UDP协议是一种不可靠的网络通信协议

问答题

31.写出5种常用的设计模式

32.Vector,ArrayList,LinkedList的区别是什么?

编程题

33.用冒泡排序算法对int[] a 升序排列。