Java核心API 题库附答案

  《Java核心API》考试题

一、理论测试题:(共出50题,共100分)

  • 知识结构题

1.下列哪项不是Java核心API中的接口?  [单元十、十一、十二、十三]

    A.Collenction

    B.Set

    C.Collections

    D.Map

  1. 下列哪种说法不正确? A  [单元一、三、四、五]

A.流是指一连串流动的字符,是以先进后出方式发送信息的通道

B.字节流占8位

C.字符流占16位

D.用DataInputStream 读二进制文件

3.下列哪项不属于Java语言的关键字? [单元一、二]

    A.package

    B.File

    C.import

    D.implements

 

  1. 下列哪项说法不正确?  D  [单元五]

A.dis.readByte() 读取出来的数据是Byte类型

B. dis.readInt();        读取出来的是整数

C. dis.close ();  关闭数据输入流

D.以上说法都不正确

 

5.下面哪项说法是正确的?  [单元六]

A.String是原始基本数据类型

B.HashMap不允许存放空值、空键

C.List接口允许重复

D.Set接口允许重复

 

6.下列哪项不属于集合框架优点的是:                            [单元九]

  A. 提供有用的数据结构和算法,从而减少编程工作

  B. 提高了程序速度和质量,因为它提供了高性能的数据结构和算法

  C.允许不同 API 之间的互操作,API之间可以来回传递集合

 D.能够在计算机程序中用类似的实体模拟现实世界中的实体

 

  • 概念题

 

7. ____________对象是长度可变的对象引用数组,类似于动态数组[单元十一] ArrayList

 

8._________的好处在于它具有访问、检索和删除数据的方法    [单元十三] LinkedList

 

9. _______接口由键值对组成    [单元十三] Map

 

10.同步的关键字是_______________________  [单元十八、十九]synchronized

 

11.瞬时的关键字_________________________[单元七、八]transient

 

12.线程休眠用_______________方法[单元十七]sleep

 

13.实现线程有______________种方式?       [单元十六]

 

14.启动线程用___________方法?[单元九、十、十一] start

 

 

15.线程等待用________________方法[单元十五]   wait

 

16. 唤醒所有睡觉线程用____________方法[单元十七]  notifyall

 

17. ____________就是具有一个或多个类型参数的类; [单元七泛型类

18. TreeMap排序是_________________ [单元十三] 有序

19.String的长度是__________________[单元六]length()方法

20.实现____________________需要实现Serializable接口    [单元八]   序列化

21.实现线程需要继承____________________类 [单元十五] Thread

22.实现线程需要实现____________________接口[单元十六]Runnable

23. FileOutputStream用于_______[单元三写文本文件

24.FileInputStream用于 ____________  [单元三] 读文本文件

25.BufferedReader用于___________?  [单元四]   读文本文件

26. BufferedWriter用于______________________ [单元四] 写文本文件

27.DataInputStream 用于__________________________ [单元五]读二进制文件

28. 为了保证程序类型的安全,减少程序出错的机率,避免带来的麻烦引入了__________[单元七、八] 泛型

  • 技术操作题(技术操作层面。)

29. 下列代码运行不可能出现的结果是:

public static void main(String args[]){

         Random random = new Random();

      int ran = random.nextInt(3);   

      System.out.println("产生的结果为: "+ran);

   }                 [单元六]

    A.产生的结果为: 0

   B.产生的结果为: 3

   C.产生的结果为: 1

   D.产生的结果为: 2

 

30.给出下面的代码运行结果:  [单元十二]

public static void main(String args[]) {

      Set ts = new TreeSet();

      ts.add("a");

      ts.add("c");

      ts.add("b");

      Iterator it = ts.iterator();

      while(it.hasNext()){

         System.out.print(it.next());

      } 

  1. acb
  2.   bac
  3.   abc
  4. 编译错误

31.下列哪个方法不是线程类的:  [单元五]

 

A. run()

B. start()

C. close()

D.以上说法都不对

  • 技术分析题

32.说出Vector类的特性  [单元十四]

答:它具有类似数组的数据结构,而且是动态的、可以存放一定

数量的元素、容量可以递增

33. Thread创建线程步骤[单元十五]

答:1)创建一个新的线程类,继承Thread类并覆盖Thread类的run()方法;

2)创建一个线程类的对象,创建方法与一般对象的创建相同,使用关键字new完成。

3)启动新线程对象,调用start()方法。

4)线程自己调用run()方法。

 

34.简述Runnable创建线程步骤[单元十六]

答:1)创建一个实现Runnable接口的类,并且在这个类中重写run方法。

2)使用关键字new一个ThreadType的实例;

3)通过Runnable的实例创建一个线程对象,在创建线程对象时,调用的构造函数是new Thread(ThreadType),它用ThreadType中实现的run()方法作为新线程对象的run()方法。

4)通过调用ThreadType对象的start()方法启动线程运行。

 

  • 岗位认知题

35.Java工程师的工作内容包括哪些? ABCDE   [单元十九]

A.参与系统架构的设计;

B.负责子系统或独立项目的开发管理工作;
    C. 负责部分软件模块的设计与开发;
    D. 负责部分模块及系统整体的单元测试工作;
   E. 负责部分文档等资料的编写。

36.面向对象编程、面向对象分析、面向对象设计分别缩写为?   [单元一]

答:OOP、OOA、OOD

37.Java程序员的职业发展?  (说出一个方向即可) [单元二十]

  答:  1、程序员》核心程序员》架构师》技术总监

 2、程序员》开发组长》项目经理》开发部门经理

 3、程序员》技术支持》售前/售后

 4、程序员》测试工程师》高级测试工程师/质量部门经理

  • 行业知识

38.画出线程周期图? [单元十七]

答:

 

 

 

 

 

 

 

 

39.简述为什么引入泛型?  [单元七]

答:从使用中可以看到,存放的数据取出来用时,必须强制转化为它的实际类型;

这样不能保证程序类型的安全,增加了程序出错的机率,而且带来了麻烦;

因此java中引入了“泛型”的概念。

40.什么样的代码能称为优秀代码?   [单元二十]

答:定义清晰、复杂度符合标准、整洁

41.列出Java中常用接口(三个即可)?[单元九]

list、map、set等

42.列出Java中常用包(三个即可)?[单元二]

lang、io、util等

43.列出Java中常用类(三个即可)?[单元六]

  File、 String、ArrayList、HashMap、HashSet、Thread等

44. 暂停当前正在执行的线程对象,并执行其他线程需要调用的方法是?[单元十七]

      yield()方法

45.ArrayList底层使用什么实现,默认容器大小和增量分别是多少?[单元六]

 

底层使用Object数组实现,默认容量10,增量1.5

46.HashMap和HashTable的区别是?[单元六]

 

HashTable线程安全,键值不可为null;hashMap线程不安全,键值可为null。

47.HashSet底层是如何实现?[单元六]

 

使用hashMap实现,hashMap键作为HashSet中每个元素的值,hashMap中的值为一个Object常量

48.进程和线程的区别是什么?[单元十七]

 

进程是执行着的应用程序,而线程是进程内部的一个执行序列。一个进程可以有多个线程。

49. 什么是死锁(deadlock)?[单元十七]

 

两个进程都在等待对方执行完毕才能继续往下执行的时候就发生了死锁。结果就是两个进程都陷入了无限的等待中。

50. 如果对象的引用被置为null,垃圾收集器是否会立即释放对象占用的内存?[单元十七]

不会,在下一个垃圾回收周期中,这个对象将是可被回收的。

 

.技能测试题:(共100分,必考题10分;非必考题出3题,每生抽1题,作答时间为80分钟,每题90分)

 

        1. 画出本门课程的知识结构图。(必考题5分)

Java源代码(*.java)-----à编译(Javac)-----àJava字节码文件---à运行(java)---àJVM--à(Windows\Linux\Unix)

        1. 本门课程所对应的岗位职责要求。(必考题5分)

参与系统架构的设计;

负责子系统或独立项目的开发管理工作;
负责部分软件模块的设计与开发;
负责部分模块及系统整体的单元测试工作;
负责部分文档等资料的编写。

3.应用Java语言基本语法自行编写代码实现继承线程并启动(要求考生以自己姓名全拼创建工程,应用倒挂的域名建立包,通过继承父类实现子线程启动)

4.应用Java语言基本语法自行编写代码实现接口并启动线程(要求考生以自己姓名全拼创建工程,应用倒挂的域名建立包,通过实现接口进而对线程进行启动)

     5.应用Java语言基本语法自己定义ArrayList类实现添加删除等功能  (要求考生以自己姓名全拼创建工程,应用倒挂的域名建立包,通过自定义动态数组并对数组中元素进行增删等操作)

 

 

  • 8
    点赞
  • 40
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值