2(360-2020春季招聘笔试-Java方向)
以下说法对于集合类底层实现错误的是?
| HashSet 是依靠 HashMap 来实现的。 |
| HashMap 底层存储使用到数组、链表、树等数据结构。 |
ArrayList 的底层采用的数据结构是数组
TreeMap 的底层存储采用的是 AVL-树 数据结构(*)
注:treemap的底层为红黑树,而不是平衡二叉树。
8.在jdk1.5之后,下列 java 程序输出结果为______。
int i=0;
Integer j = new Integer(0);
System.out.println(i==j);
System.out.println(j.equals(i));
- A、
false,false
- B、
true,false
- C、
true,true (*)
- D、
程序无法执行
- E、
false,true
注:进行“==”运算符的比较,封装型将会自动拆箱变为基本型后再进行比较,因此Integer(0)会自动拆箱为int类型再进行比较,显然返回true。封装类型调用equals(),但是参数是基本类型,这时候,先会进行自动装箱,基本型转换为其封装类型,再进行比较。首先equals()会比较类型,如果类型相同,则继续比较值,如果值也相同,返回true。
9.下面程序的运行结果是
String str1 = "hello";
String str2 = "he" + new String("llo");
System.err.println(str1 == str2);
- A、
false (*)
- B、
exception
- C、
无输出
- D、
true
注:str1指向常量池中的字符串;str2是通过StringBuilder类new出的对象,指向堆。故为false
11.以下关于Java传递方法参数说法正确的是?
- A、
Java的参数传递是值传递,其传递的是引用的地址值,所以是值传递 (*)
- B、
Java的参数传递在参数为基本数据类型时是值传递,在参数为对象时传递的是参数的引用
- C、
Java中的参数传递是引用传递,其传递的是参数的引用
注:java语言的参数传递只有值传递
13.(百度2021校招Java研发工程师笔)
关于线程池ThreadPoolExecutor生命周期的说法错误的是:
- A、
SHUTDOWN: 不接受新的任务,打断空闲线程,但是继续执行完内部队列中排队的任务。
- B、
RUNNING: 可以接受新的请求并执行排队的任务。
- C、
WAITING: 将新的任务加入任务队列,打断空闲线程,并挂起所有正在执行的线程。 (*)
- D、
STOP: 不接受新的任务,打断所有线程,清空任务队列,并返回队列中未完成的任务。
16.【2020】奇安信秋招Java方向试卷3
String s = new String("xyz");创建了几个StringObject
- A、
一个
- B、
两个
- C、
两个或一个都有可能 (*)
- D、
三个
注:如果在常量池中已经存在“xyz”,那么不会继续创建,只创建一个new String("xyz")的对象。如果常量池中没有,则会创建两个对象,一个是对象的值“xyz”,一个是new String("xyz")的对象。
3.事务的四大特性:()、()、()、()
原子性 一致性 隔离性 持久性
4.格力2020秋招后端岗笔试题
SQL 的 SELECT 语句中,"HAVINg 条件表达式"用来筛选满足条件的——
分组
1.下面MySQL中表示时间的数据类型有哪些?
- A、
time
- B、
year
- C、
timestamp
- D、
date
- E、
datetime
正确答案: ABCDE
2.关于equals和hashCode描述正确的是 ()
- A、
两个obj,如果equals()相等,hashCode()一定相等(符合代码规范的情况下)
- B、
其他都不对
- C、
两个obj,如果hashCode()相等,equals()不一定相等
- D、
两个不同的obj, hashCode()可能相等
正确答案: ACD
注:equals判断两个对象是否相同,hashcode将对象地址转换为整数类型返回。1、如果两个对象equals,Java运行时环境会认为它们的hashcode一定相等。2、如果两个对象不equals,它们的hashcode有可能相等。3、如果两个对象hashcode相等,它们不一定equals。4、如果两个对象hashcode不相等,它们一定不equals。
3.有关java静态初始化块说法正确的是?()
- A、
用户可以控制何时执行静态初始化块
- B、
在创建第一个实例前,将自动调用静态初始化块来初始化
- C、
静态初始化块没有访问修饰符和参数
- D、
无法直接调用静态初始化块
正确答案: BCD
5.下面哪些容器是线程安全的?
- A、
Vector
- B、
ArrayList
- C、
HashTable
- D、
LinkedHashMap
- E、
ConcurrentHashMap
- F、
HashMap
- G、
TreeSet
- H、
HashSet
正确答案: ACE
6.(中国系统2021校园招聘-Java笔试)List有哪些实现类
- A、
ArrayList
- B、
Arrays
- C、
LinkedList
- D、
Vector
正确答案: ACD
7.(中国系统2021校园招聘-Java笔试)
在Java接口中,下面哪些方法是有效的方法声明
- A、
private void function1()
- B、
void function1()
- C、
protected void function1()
- D、
public void function1()
正确答案: BD
注:接口中的方法前的访问权限控制符默认为public,并且只能是public。b选项默认为public
1.一个Java源程序文件可以定义多个public类。
正确答案: ×
注:一个Java源文件中可以定义多个类,但是最多只有一个类被public修饰,并且这个类的类名与文件名必须相同。



