栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Java

Java基础错题集(一)

Java 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

Java基础错题集(一)

1.(360-2020春季招聘笔试-Java方向)

以下说法对于集合类底层实现错误的是?(D)

  • A.HashMap 底层存储使用到数组、链表、树等数据结构。

  • B. ArrayList 的底层采用的数据结构是数组

  • C.HashSet 是依靠 HashMap 来实现的。

  • D. TreeMap 的底层存储采用的是 AVL-树 数据结构

解析: TreeMap 的底层存储采用的是红黑树(自平衡的排序二叉树)

2.下面程序的运行结果是(B)

String str1 = "hello";

String str2 = "he" + new String("llo");

System.err.println(str1 == str2);

  • A.exception

  • B.无输出

  • C.false

  • D.true

解析:str1指向的是常量池里的对象,代表的是一个常量,而str2指向的是堆里面的对象,因为new生成的字符串对象会占用堆空间,所以他们的指向不同,判断结果为false。

3.关于String,StringBuffer,StringBuider的说法,下列正确的是(D)

  • A. StringBuffer线程不安全,StringBuilder线程安全

  • B.String str = new String("123");该过程产生了一个String对象

  • C. String是一个不可变类,可以被继承

  • D.String str = new String("123");该过程产生了两个或一个String对象

解析:StringBuffer线程安全,StringBuilder线程不安全,所以StringBuilder性能高一些。String类被final修饰,不能被继承。

对于String str = new String("123");JVM首先在常量池中查找是否存在“123”如果存在就啥也不做,如果不存在,就创建一个对象,并将它放入常量池,那么这就算了一个;当JVM遇到new时,又会在堆上创建一个String对象,并将其引用返回给str,这又是一个,加起来就是2个了。

4.【2020】奇安信秋招Java方向试卷3

String s = new String("xyz");创建了几个StringObject(C)

  • A. 一个

  • B. 三个

  • C.两个或一个都有可能

  • D.两个

解析:这题跟上题考的是一个知识点,如果常量池中存在"xyz",则只创建一个对象,如果常量池中不存在"xyz",则需要创建两个对象。

5.(百度2021校招Java研发工程师笔)

关于线程池ThreadPoolExecutor生命周期的说法错误是:(C)

  • A.RUNNING: 可以接受新的请求并执行排队的任务。

  • B.SHUTDOWN: 不接受新的任务,打断空闲线程,但是继续执行完内部队列中排队的任务。

  • C.WAITING: 将新的任务加入任务队列,打断空闲线程,并挂起所有正在执行的线程。    

  • D.STOP: 不接受新的任务,打断所有线程,清空任务队列,并返回队列中未完成的任务。

解析:ThreadPoolExecutor 的五种状态

1. RUNNING : 线程池创建之后的初始状态,在该状态下可以执行任务

2.SHUTDOWN 该状态下线程池不再接收新任务,但是会将工作队列中的任务执行完毕

3. STOP : 该状态下线程池不再接收新任务,也不会处理工作队列中的剩余任务,并且将会中断所有工作进程

4. TIDYING : 该状态下所有任务都已终止或处理完成,将会执行terminated()钩子方法

5. TERMINATED : 执行完terminated方法之后的状态

6. (单选题,5.0分)以下关于Java传递方法参数说法正确的是?(C)

  • A. Java的参数传递在参数为基本数据类型时是值传递,在参数为对象时传递的是参数的引用

  • B. Java中的参数传递是引用传递,其传递的是参数的引用

  • C. Java的参数传递是值传递,其传递的是引用的地址值,所以是值传递

解析:Java只存在值传递!!!不存在引用传递!!!C++里引入了&作为引用特性,所以C++有值传递和引用传递两种方式。C语言严格意义上来说也只有值传递。

7. (单选题,5.0分)ArrayList和Vector主要区别是什么?(C)

  • A.Vector是通过链表结构存储数据,ArrayList是通过数组存储数据

  • B.Vector与ArrayList一样,也是通过数组实现的,不同的是ArrayList支持线程的同步

  • C.Vector与ArrayList一样,也是通过数组实现的,不同的是Vector支持线程的同步

  • D.上述说法都不正确

解析:Vector与ArrayList底层都是通过数组实现的,但是Vector是线程安全的,即支持线程的同步

8.(填空题,5.0分)创建线程的三种方式:继承(Thread)类、实现(Runnable)接口、实现(Callable)接口

9. (填空题,5.0分)Java语言中,子类继承父类时使用(extends)关键字,而类实现接口时采用(implements)关键字。实例化对象时,使用(new)运算符为对象分配存储空间。

10. (填空题,5.0分)事务的四大特性:(原子性)、(隔离性)、(一致性)、(持久性)

11. (多选题,5.0分)下面MySQL中表示时间的数据类型有哪些?(ABCDE)

  • A. year

  • B. timestamp

  • C. time

  • D. date

  • E. datetime

12. (多选题,5.0分)(中国系统2021校园招聘-Java笔试)
在Java接口中,下面哪些方法是有效的方法声明(BC)

  • A.private void function1()

  • B.public void function1()

  • C.void function1()

  • D.protected void function1()

解析:接口中的方法前的访问权限控制符默认为public,并且只能是public

           C选项 无修饰符 此处默认应该为 public

13. (多选题,5.0分)关于Java中的数组,下面的一些描述,哪些描述是准确的:(BDE)

  • A.数组长度是可以动态调整的

  • B.数组是一个对象,不同类型的数组具有不同的类

  • C.两个数组用equals方法比较时,会逐个便利其中的元素,对每个元素进行比较

  • D.数组是一个连续的存储结构

  • E.可以二维数组,且可以有多维数组,都是在Java中合法的

  • F.一个固定长度的数组可类似这样定义: int array[100]

解析:两个数组用Object 里equals方法比较时,比较的是内存地址是否相同,用Arrays.equals()才会比较两个数组中的每个元素的值。

14. (多选题,5.0分)【2021】小米秋招软件开发方向第二场笔试

有关java静态初始化块说法正确(ABD)

  • A. 在创建第一个实例前,将自动调用静态初始化块来初始化

  • B. 静态初始化块没有访问修饰符和参数

  • C. 用户可以控制何时执行静态初始化块

  • D. 无法直接调用静态初始化块

解析:初始化模块用户是不能直接调用的,都是系统自动初始化,且静态初始化块没有访问修饰符和参数

15. (多选题,5.0分)下面哪些容器是线程安全的(CDFI)

  • A. ArrayList

  • B. HashMap

  • C. Vector

  • D. HashTable

  • E. TreeSet

  • F. ConcurrentHashMap

  • G. HashSet

  • H. LinkedHashMap

  • I.Stack

16. (多选题,5.0分)关于equals和hashCode描述正确的是 (ACD)

  • A.两个不同的obj, hashCode()可能相等

  • B.其他都不对

  • C.两个obj,如果hashCode()相等,equals()不一定相等

  • D.两个obj,如果equals()相等,hashCode()一定相等(符合代码规范的情况下)

17. (多选题,5.0分)(中国系统2021校园招聘-Java笔试)List有哪些实现类(ABC)

  • A.ArrayList

  • B.LinkedList

  • C.Vector

  • D.Arrays

解析:

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/1005649.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号