2022-06-22
1、关于ArrayList、LinkedList和HashMap说法错误的
A. ArrayList和LinkedList均实现了List接口 (对)
B. ArrayList访问速度比LinkedList快(对,ArrayList是动态数组结构,访问时直接通过下标定位;LinkedList是链表,需要移动指针从前往后依次查找)
C. 添加和删除元素时,ArrayList的表现更好 (错误,ArrayList是数组,删除和添加元素时,会对操作节点之后的所有数据的下标索引造成更改,需要移动数据)
D. HashMap实现Map接口,它允许任何类型的健和值对象,允许将null用作健和值 (对,HashMap中的key可以是null,基本数据类型或引用数据类型,null作为健一次,作为值可以多次)
2、mysql使用binlog日志恢复时,不需要在配置文件指定什么
A. server_Id
B. server_name (B)
C. binlog-format
D. log_bin
3、Redis支持的数据类型不包括
A. String
B. Long (redis支持的数据类型String List Hash Set ZSet)
C. List
D. Set
4、以下关于事务管理说法错误的
A. 实现编程事务,可以实现PlatformTransaction接口或是使用事务模板TransactionTemplate
B. Spring事务管理方式包括编程式、声明式
C. 声明式采用配置xml方式,将事务管理与实际业务代码解耦
D. 编程式采用的方式来控制事务的边界 (编程式最细粒度可以精确到代码库级别,声明式最多精确到方法级别)
5、SaaS的全称
Software as a Service(软件即服务)
IaaS: Infrastructure as a Service(基础设施即服务)
PaaS: Platform as a Service (平台即服务)
6、Linux文件权限一共10位长度,分为四段,第三段表示
linux文件权限,包含了四段,主要如下: 第一段1位:表示文件类型 第二段3位:表示所有者权限 (xxx)分别表示 读(4) 写(2) 执行(1) 第三段3位:表示所在组权限 (xxx)分别表示 读(4) 写(2) 执行(1) 第四段4位:表示其他用户权限 (xxx)分别表示 读(4) 写(2) 执行(1) 四段权限从左至右分别为文件类型,所有者的权限,所有者所在组的权限,其他用户的权限。
7、String对象的方法不包括 都包括
A. charAt()
B. substring()
C. length()
D. toUpperCase()
8、下列关于construction说法正确的有
A. 在一个对象被new时执行 (对)
B. construction必须与class同名,但方法不能与class同名 (方法名可以与类名相同)
C. class中的construction不可省略 (默认构造函数可省略)
D. 一个class只能定义一个construction (可定义多个不同参数的构造函数)
9、下面哪个Map是有序的
A. HashMap
B. WeakHashMap
C. TreeMap
D. LinkedHashMap (有序)
10、一颗深度为k的二叉树,如果包含了()个节点,就称为满二叉树
A. 2~(k-1)
B. (2~k)+1
C. 2~k
D. (2~k)-1 (D)
11、下面关于浏览器中使用js跨域获取数据的描述,说法错误的
A. 使用window.name来进行跨域
B. 域名、端口相同,协议不同,属于相同的域 (协议、域名、端口共同判定是否是同源)
C. js可以使用jsonp进行跨域
D. 通过修改document.domain来跨子域 (除了以上3种,还可以使用CORS和H5新增的postMessage解决)
12、下面的语句会如何输出System.out.println(4&7)
A. 4 (A)
B. 5
C. 6
D. 7
13、以下那组异常均属于运行时异常或者非检查异常()
运行时异常都是 RuntimeException 类及其子类异常,如NullPointerException、IndexOutOfBoundsException
非运行时异常是指 RuntimeException 以外的异常,类型上都属于 Exception 类及其子类如 IOException、ClassNotFoundException 等以及用户自定义的 Exception 异常
14、关于JavaScript语言,下列说法中错误的是()
A. js是一种解释性语音 (解释性语言,非编译性语音)
B. js与操作环境无关 (不依赖底层操作系统,与浏览器有关)
C. js与客户端浏览器无关
D. js是动态的,它可以直接对用户输入做出响应 (js是动态类型,弱类型)
15、关于setTimeout("check", 10)中说法正确的是()
A. 循环执行10次
B. check函数每10秒执行一次
C. 10作为参数传给函数check
D. check函数每10毫秒执行一次
(都不对,10毫秒后执行check函数)
16、在css选择器中,优先级顺序正确的是()
!important > 行内样式 > id选择器 > 类选择器 > 标签选择器 > 通配符选择器*
17、用于实现服务注册与发现的注解()
A. @SpringBootApplication (StringBoot的核心注解,目的是开启自动配置)
B. @EnableDiscoveryClient (SpringCloud服务注册与发现)
C. @EnableCircuitBreaker (SpringCloud熔断机制)
D. @EnableZuulProxy (SpringCloud网关服务)
18、衡量算法好坏的标准()
A. 运行速度快
B. 占用空间少
C. 时间复杂度低 (C)
D. 代码短
19、当读请求大于写请求时,提升数据库读请求的吞吐量最合适的方案为()
A. 消息队列
B. 读写分离 (B)
C. 分布式锁
D. 分库分表
多选
1、以下SpringCloud和dubbo区别,不正确的是()
A.dubbo的服务调用方式是RPC
B. Spring Cloud的服务调用方式是RPC (Ribbon)
C. dubbo的注册中心是zookeeper
D. Spring Cloud的注册中心是Eureka
2、http响应包含以下哪些部分(ABD)
A. 响应头
B. 响应正文
C. 协议版本号
D. 响应状态行
3、Linux中可以查看内存,交换内存的情况命令是(AC)
A. top
B. last
C. free
D. lastcomm
4、MapReduce运行过程包含哪些阶段(ABC)
A. map
B. reduce
C. shuffle
D. sort
5、Spring框架的事务管理有哪些优点(ACD)
A. 为不同的事务API提供一个不变的编程模式
B. 为编程式事务管理提供了一套复杂的API
C. 支持声明式事务管理
D. 和Spring各种数据反问抽象层很好集成
简答题
1、简述线程的生命周期?
新建(new Thread)
当创建Thread类的一个实例(对象)时,此线程进入新建状态(未被启动)
Thread t1=new Thread();
就绪(runnable)
线程已经被启动,正在等待被分配给CPU时间片,也就是说此时线程正在就绪队列中排队等候得到CPU资源
t1.start();
运行(running)
线程获得CPU资源正在执行任务(run()方法),此时除非此线程自动放弃CPU资源或者有优先级更高的线程进入,线程将一直运行到结束。
堵塞(blocked)
由于某种原因导致正在运行的线程让出CPU并暂停自己的执行,即进入堵塞状态。
正在睡眠:用sleep(long t) 方法可使线程进入睡眠方式。一个睡眠着的线程在指定的时间过去可进入就绪状态。
正在等待:调用wait()方法。(调用motify()方法回到就绪状态)
被另一个线程所阻塞:调用suspend()方法。(调用resume()方法恢复)
死亡(dead)
当线程执行完毕或被其它线程杀死,线程就进入死亡状态,这时线程不可能再进入就绪状态等待执行。
自然终止:正常运行run()方法后终止
异常终止:调用stop()方法让一个线程终止运行
2、JVM会产生内存泄露的原因可能有哪些?
内存溢出:JVM中没有空闲,垃圾回收器回收垃圾之后也无法提供足够的内存,导致内存溢出。
- 内存中加载的数据量过于庞大,如一次从数据库取出过多数据;
- 集合类中有对对象的引用,使用完后未清空,使得JVM不能回收;
- 代码中存在死循环或循环产生过多重复的对象实体;
- 使用的第三方软件中的BUG;
- 启动参数内存值设定的过小 。
内存泄露:对象不再被程序调用,但是GC又回收不掉,叫内存泄露。内存泄露增多,直到内存耗尽,引起OutOfMemory异常。
1、对象定义在错误的范围
2、异常处理不当
3、集合数据管理不当
浙公网安备 33010602011771号