版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
2026上海帆一尚行科技有限公司暑期实习生招募笔试历年常考点试题专练附带答案详解一、单项选择题下列各题只有一个正确答案,请选出最恰当的选项(共30题)1、在Java集合框架中,若需保证元素唯一且有序,应优先选择哪种实现?
A.ArrayListB.HashSetC.TreeSetD.LinkedList2、关于TCP三次握手,下列说法错误的是?
A.第一次握手由客户端发起SYN
B.第二次握手服务端回复SYN+ACK
C.第三次握手客户端发送ACK,连接建立
D.第三次握手主要为了确认服务端的接收能力3、在MySQL中,下列关于索引最左前缀原则的描述,正确的是?
A.联合索引(a,b,c),查询条件whereb=1andc=2会使用索引
B.联合索引(a,b,c),查询条件wherea=1andc=2会使用部分索引
C.联合索引(a,b,c),查询条件wherea=1andb>1andc=2,c字段能用到索引
D.联合索引(a,b,c),查询条件wherealike'%abc'会使用索引4、SpringBoot项目中,默认使用的嵌入式Web服务器是?
A.TomcatB.JettyC.UndertowD.Netty5、下列哪种设计模式适用于“一个对象状态改变时,所有依赖它的对象都得到通知并自动更新”的场景?
A.单例模式B.工厂模式C.观察者模式D.代理模式6、Redis中,若要实现分布式锁,推荐使用哪个命令组合以确保原子性?
A.SETNX+EXPIREB.SETkeyvalueNXEXsecondsC.GET+SETD.INCR+DEL7、在HTTP协议中,状态码304表示?
A.请求成功B.永久重定向C.资源未修改D.服务器内部错误8、下列关于JVM垃圾回收算法的说法,错误的是?
A.标记-清除算法会产生内存碎片
B.复制算法适用于新生代,效率较高
C.标记-整理算法解决了内存碎片问题,但移动成本高
D.分代收集算法中,老年代通常采用复制算法9、Linux系统中,查看当前目录下所有文件(含隐藏文件)详细信息的命令是?
A.ls-lB.ls-aC.ls-alD.pwd10、在Vue.js中,用于实现父子组件通信的主要方式是?
A.props/$emitB.VuexC.localStorageD.window.event11、在Java集合框架中,关于HashMap与HashTable的区别,下列说法正确的是:
A.HashMap线程安全,HashTable非线程安全
B.HashMap允许key和value为null,HashTable不允许
C.HashMap继承自Dictionary,HashTable继承自AbstractMap
D.两者底层均使用红黑树实现12、下列关于SpringBoot自动配置原理的描述,错误的是:
A.@SpringBootApplication包含@ComponentScan注解
B.auto-configuration类通常标注@Configuration
C.spring.factories文件用于加载自动配置类
D.自动配置类一旦定义,无法被用户自定义配置覆盖13、在MySQLInnoDB存储引擎中,关于事务隔离级别与锁机制,下列说法正确的是:
A.读未提交(ReadUncommitted)级别下不存在脏读
B.可重复读(RepeatableRead)级别下通过MVCC解决幻读问题
C.串行化(Serializable)级别并发性能最高
D.默认隔离级别是读已提交(ReadCommitted)14、关于Redis持久化机制RDB和AOF,下列对比错误的是:
A.RDB是快照形式,恢复速度快
B.AOF记录每次写命令,数据安全性更高
C.RDB持久化过程中会阻塞主线程
D.AOF文件体积通常比RDB文件小15、在分布式系统中,CAP理论指出一个分布式系统不可能同时满足哪三项?
A.一致性、可用性、分区容错性
B.一致性、原子性、隔离性
C.可用性、持久性、分区容错性
D.原子性、一致性、持久性16、下列关于Linux常用命令的描述,正确的是:
A.chmod755file表示所有者拥有读写执行权限,组用户和其他用户拥有读执行权限
B.ps-ef|grepjava用于杀死所有java进程
C.tail-flogfile用于查看文件的前10行
D.find/-name"*.log"用于删除所有log文件17、在HTTP协议中,关于状态码301和302的区别,下列说法正确的是:
A.301是临时重定向,302是永久重定向
B.301是永久重定向,浏览器会缓存新地址;302是临时重定向,不缓存
C.两者都会自动将POST请求转换为GET请求
D.302状态码表示资源找不到18、关于前端Vue.js的生命周期钩子,下列执行顺序正确的是:
A.created->mounted->beforeMount
B.beforeCreate->created->beforeMount->mounted
C.mounted->beforeUpdate->updated
D.created->beforeMount->mounted->beforeUpdate19、在算法复杂度分析中,二分查找算法在最好情况下的时间复杂度是:
A.O(n)
B.O(logn)
C.O(1)
D.O(nlogn)20、关于设计模式中的单例模式(Singleton),下列哪种实现方式是线程安全且利用类加载机制保证唯一性的?
A.懒汉式(双重检查锁)
B.饿汉式
C.静态内部类方式
D.枚举方式21、在Java集合框架中,若需保证元素唯一且有序,应优先选择哪种实现?
A.ArrayListB.HashSetC.TreeSetD.LinkedList22、关于HTTP协议状态码,下列描述正确的是?
A.200表示请求成功B.403表示资源未找到C.500表示客户端错误D.301表示临时重定向23、MySQL中,为了提高查询效率,以下哪种操作最可能触发索引失效?
A.使用主键等值查询B.对索引列进行函数运算C.使用覆盖索引D.联合查询遵循最左前缀原则24、在SpringBoot项目中,用于定义RESTfulAPI接口的注解组合通常是?
A.@Controller+@ResponseBodyB.@Service+@TransactionalC.@Repository+@AutowiredD.@Component+@Scope25、下列关于Redis数据结构的描述,错误的是?
A.String是最基本类型B.Hash适合存储对象C.List底层是链表D.Set支持交集并集运算26、Git命令中,用于将本地分支推送到远程仓库的是?
A.gitpullB.gitfetchC.gitpushD.gitmerge27、在Linux系统中,查看当前目录下所有文件(含隐藏文件)详细信息的命令是?
A.ls-lB.ls-aC.ls-alD.pwd28、关于TCP三次握手,第二次握手服务器发送的报文标志位是?
A.SYNB.ACKC.SYN+ACKD.FIN29、下列哪种算法的时间复杂度在最坏情况下仍为O(nlogn)?
A.快速排序B.冒泡排序C.归并排序D.插入排序30、在面向对象设计中,“开闭原则”指的是?
A.对扩展开放,对修改关闭B.对继承开放,对多态关闭C.对添加开放,对删除关闭D.对内部开放,对外部关闭二、多项选择题下列各题有多个正确答案,请选出所有正确选项(共15题)31、在Java集合框架中,关于HashMap与HashTable的区别,下列说法正确的有:
A.HashMap允许null键和null值
B.HashTable是线程安全的
C.HashMap继承自AbstractMap
D.HashTable性能通常高于HashMap32、关于SpringBoot自动配置原理,下列描述正确的有:
A.基于@Conditional注解实现条件装配
B.核心注解是@EnableAutoConfiguration
C.自动配置类必须手动注册到容器
D.spring.factories文件加载配置类33、MySQL索引失效的场景包括:
A.对索引列进行函数运算
B.使用!=或<>操作符
C.模糊查询以%开头
D.联合索引违反最左前缀法则34、Redis持久化机制RDB与AOF的特点,正确的有:
A.RDB恢复速度快于AOF
B.AOF数据安全性高于RDB
C.RDB适合大规模数据恢复
D.AOF文件体积通常小于RDB35、TCP三次握手过程中,涉及的状态转换有:
A.SYN_SENT
B.ESTABLISHED
C.TIME_WAIT
D.LISTEN36、关于Git版本控制,下列命令作用描述正确的有:
A.gitpull等于fetch加merge
B.gitreset--hard会丢弃工作区修改
C.gitstash用于暂存未提交修改
D.gitrebase会生成新的合并提交节点37、Linux系统中,查看进程信息的命令有:
A.ps
B.top
C.netstat
D.kill38、前端Vue3CompositionAPI的优势包括:
A.更好的逻辑复用
B.代码组织更灵活
C.更好的TypeScript支持
D.完全兼容Vue2OptionsAPI写法39、关于微服务架构中的服务发现,下列说法正确的有:
A.Eureka采用AP原则
B.Zookeeper采用CP原则
C.Nacos支持AP和CP切换
D.客户端负载均衡由服务端完成40、设计模式中,属于创建型模式的有:
A.单例模式
B.工厂方法模式
C.适配器模式
D.建造者模式41、在Java集合框架中,关于HashMap与ConcurrentHashMap线程安全性的描述,正确的有:
A.HashMap是非线程安全的
B.ConcurrentHashMap在JDK1.8前采用分段锁
C.ConcurrentHashMap在JDK1.8后采用CAS+synchronized
D.Hashtable是线程安全且性能优于ConcurrentHashMap42、关于MySQL索引失效的场景,下列描述正确的有:
A.对索引列进行函数运算
B.使用like'%keyword'前置百分号
C.联合索引违背最左前缀原则
D.字符串类型字段查询时不加引号43、在Spring框架中,关于Bean生命周期的说法,正确的有:
A.实例化发生在属性赋值之前
B.初始化方法在属性填充之后执行
C.Destroy方法在容器关闭时调用
D.BeanPostProcessor在初始化前后均可介入44、关于TCP三次握手,下列说法正确的有:
A.第一次握手客户端发送SYN包
B.第二次握手服务端回复SYN+ACK包
C.第三次握手客户端发送ACK包
D.三次握手主要为了同步序列号和确认接收能力45、Redis中适合用于实现分布式锁的命令或特性包括:
A.SETNX
B.EXPIRE
C.SETkeyvalueNXEXseconds
D.DEL三、判断题判断下列说法是否正确(共10题)46、在Java后端开发中,HashMap是线程安全的集合类,适合在高并发场景下直接使用。(对/错)A.对B.错47、HTTP协议中,GET请求通常用于获取资源,且请求参数包含在URL中,具有幂等性。(对/错)A.对B.错48、数据库事务的ACID特性中,“隔离性”是指事务一旦提交,对数据的改变就是永久的。(对/错)A.对B.错49、在Linux系统中,chmod755filename命令表示文件所有者拥有读、写、执行权限,组用户和其他用户拥有读、执行权限。(对/错)A.对B.错50、TCP三次握手过程中,第二次握手服务器发送的报文段中,SYN和ACK标志位均被置为1。(对/错)A.对B.错51、MySQL中,InnoDB存储引擎支持事务和外键,而MyISAM存储引擎不支持事务但查询速度在某些读多写少场景下可能更快。(对/错)A.对B.错52、在面向对象编程中,接口(Interface)可以包含具体的方法实现,而抽象类(AbstractClass)不能包含具体方法实现。(对/错)A.对B.错53、Redis作为一种基于内存的Key-Value数据库,其单线程模型意味着它无法利用多核CPU的性能优势。(对/错)A.对B.错54、算法复杂度分析中,O(nlogn)的时间复杂度通常优于O(n^2),特别是在数据量n较大时。(对/错)A.对B.错55、在Java集合框架中,HashMap是线程安全的,适合高并发场景使用。(对/错)对;错
参考答案及解析1.【参考答案】C【解析】ArrayList和LinkedList允许重复且无序;HashSet保证唯一但无序(基于哈希);TreeSet基于红黑树实现,既保证元素唯一性,又支持自然排序或定制排序。帆一尚行作为车联网科技公司,后端开发常涉及数据去重与排序场景,TreeSet是典型考点。注意TreeSet要求元素具备可比性,否则抛出ClassCastException。2.【参考答案】D【解析】三次握手中,第三次握手由客户端发送ACK给服务端,主要目的是确认客户端的发送能力和服务端的接收能力是否正常,同时防止已失效的连接请求报文段突然又传送到了服务端,产生错误。D选项表述片面,核心在于双方确认连接有效性及防止历史连接干扰,而非仅确认服务端接收能力。3.【参考答案】B【解析】最左前缀原则要求查询从索引的最左列开始。A缺a,无法使用索引;B中a匹配,b缺失,c无法单独使用索引,但a可用,故为部分使用;C中b为范围查询,导致c无法利用索引进行查找,只能用于过滤;D前导模糊查询无法使用索引。因此B正确,a列命中索引。4.【参考答案】A【解析】SpringBoot默认依赖spring-boot-starter-web,其中内置了Tomcat作为默认的嵌入式Servlet容器。虽然可以通过排除Tomcat依赖并引入Jetty或Undertow来切换容器,但在无特殊配置情况下,Tomcat是标准默认选项。Netty通常用于响应式编程(WebFlux)场景,非传统MVC默认配置。5.【参考答案】C【解析】观察者模式(ObserverPattern)定义了对象间的一对多依赖关系,当被观察者状态改变时,所有注册的观察者都会收到通知并更新。单例模式保证类只有一个实例;工厂模式用于创建对象;代理模式控制对对象的访问。车联网场景中,车辆状态上报后通知多个订阅者(如APP、后台监控)典型应用观察者模式。6.【参考答案】B【解析】早期使用SETNX设置锁再EXPIRE设过期时间,两步操作非原子,若中间宕机可能导致死锁。Redis2.6.12后,SET命令支持NX(不存在才设置)和EX(过期时间)参数,一条命令即可完成加锁和设过期时间,保证原子性,是官方推荐的分布式锁实现方式。7.【参考答案】C【解析】304NotModified表示客户端发送附带条件的请求(如If-Modified-Since),服务器判断资源自上次请求后未发生改变,因此不返回资源主体,仅返回头部信息,告知客户端使用本地缓存。200表示成功;301表示永久重定向;500表示服务器内部错误。此举可有效减少带宽消耗,提升性能。8.【参考答案】D【解析】分代收集理论认为,新生代对象存活率低,适合复制算法(Survivor区);老年代对象存活率高,不适合大量复制,通常采用标记-清除或标记-整理算法。D选项错误,老年代一般不使用复制算法。A、B、C均为各算法的典型特征描述正确。9.【参考答案】C【解析】ls-l以列表形式显示详细信息;ls-a显示所有文件,包括以.开头的隐藏文件;ls-al结合两者,显示所有文件的详细信息。pwd用于显示当前工作目录路径。在服务器运维和日志排查中,ls-al是常用命令,用于全面查看文件权限、大小、修改时间等属性。10.【参考答案】A【解析】Vue遵循单向数据流,父组件通过props向子组件传递数据,子组件通过$emit触发事件向父组件发送消息。Vuex用于复杂状态管理,非直接父子通信首选;localStorage用于持久化存储;window.event非Vue推荐通信方式。props/$emit是Vue组件化开发中最基础、核心的通信机制。11.【参考答案】B【解析】HashMap是非线程安全的,而HashTable通过synchronized保证线程安全,故A错。HashMap允许一个null键和多个null值,HashTable任何键值都不能为null,否则会抛NullPointerException,故B对。HashMap继承自AbstractMap,HashTable继承自Dictionary,故C错。JDK8后HashMap底层是数组+链表+红黑树,但HashTable并未引入红黑树优化,且主要区别在于线程安全和null值处理,故D不准确。本题核心考点为集合类的线程安全性及null值处理机制。12.【参考答案】D【解析】SpringBoot的核心是约定优于配置。@SpringBootApplication是复合注解,包含@SpringBootConfiguration、@EnableAutoConfiguration和@ComponentScan,故A正确。自动配置类确实是标准的@Configuration类,故B正确。在SpringBoot2.7之前,主要通过META-INF/spring.factories加载自动配置,故C在旧版本语境下正确(新版虽改用imports文件,但常考点仍涉及此机制)。关键在于D,SpringBoot允许通过定义自己的Bean或设置特定属性来覆盖自动配置的默认行为,例如自定义DataSourceBean会替代自动配置的DataSource,因此“无法被覆盖”说法错误。13.【参考答案】B【解析】读未提交级别下,事务可以读取其他事务未提交的数据,存在脏读,故A错。InnoDB默认隔离级别是可重复读(RepeatableRead),而非读已提交,故D错。串行化级别强制事务串行执行,并发性能最低,故C错。在可重复读级别下,InnoDB通过多版本并发控制(MVCC)配合Next-KeyLock机制,在很大程度上解决了幻读问题(注意:严格意义上某些特殊场景仍有争议,但在常规面试考点中,认为RR级别结合MVCC解决了大部分幻读问题是标准答案)。因此B是相对最正确的描述。14.【参考答案】D【解析】RDB(RedisDatabase)是时间点快照,文件紧凑,恢复时直接加载数据,速度快,故A正确。RDB生成时通过fork子进程进行,主线程不阻塞(除非fork耗时极长导致短暂停顿,但通常认为不阻塞写操作),但若指保存瞬间的stop-the-world,C的表述在某些严苛语境下有争议,但相比之下D更明显错误。AOF(AppendOnlyFile)记录所有写指令,数据更完整,安全性高,故B正确。由于AOF记录的是操作日志,随着时间推移,文件体积通常远大于二进制压缩的RDB文件,尽管有重写机制,但常态下AOF体积更大。因此D说法错误。15.【参考答案】A【解析】CAP理论由EricBrewer提出,指出分布式系统无法同时满足一致性(Consistency)、可用性(Availability)和分区容错性(Partitiontolerance)。一致性指所有节点在同一时间看到相同的数据;可用性指每个请求都能在合理时间内收到非错误响应;分区容错性指系统在遇到网络分区时仍能继续运行。由于网络分区在分布式环境中不可避免,P必须保证,因此实际设计通常在CP和AP之间权衡。B、D选项涉及的是ACID事务特性,与CAP无关。故正确答案为A。16.【参考答案】A【解析】chmod755中,7代表所有者(rwx),5代表组用户(r-x),5代表其他用户(r-x),故A正确。ps-ef|grepjava仅用于查找包含java关键字的进程信息,若要杀死进程需配合kill命令,故B错。tail-f用于实时追踪文件末尾新增内容,查看前10行应使用head-n10,故C错。find命令用于查找文件,删除文件需配合-execrm{}\;或使用xargs,单独find不会删除文件,故D错。本题考查Linux基础运维命令的实际用途。17.【参考答案】B【解析】301MovedPermanently表示永久重定向,搜索引擎和浏览器会更新索引并缓存新URL,后续请求直接访问新地址,故B前半部分正确。302Found表示临时重定向,客户端应继续使用原URL,通常不缓存重定向关系,故B后半部分正确。A选项说反了。C选项,虽然许多浏览器在301/302重定向时会将POST转为GET,但这并非协议强制规定(307/308才严格保持方法不变),且不是两者的核心区别。D选项,资源找不到是404NotFound。因此,B是对两者区别最准确的描述。18.【参考答案】B【解析】Vue实例的生命周期遵循严格顺序。首先触发beforeCreate(实例初始化之后,数据观测之前),接着是created(实例创建完成,数据观测、属性和方法的运算、watch/event事件回调已完成,但未挂载DOM)。然后是beforeMount(挂载开始之前被调用),最后是mounted(el被新创建的vm.$el替换,并挂载到实例上去之后调用)。选项B完整且正确地描述了初始化阶段的四个关键钩子顺序。A顺序颠倒,C缺少初始阶段,D虽然部分顺序对但不如B完整涵盖初始流程,且题目通常考察标准全链路或初始链路,B最为标准。19.【参考答案】C【解析】二分查找适用于有序数组。最好情况是指第一次比较就找到了目标元素,此时只需进行一次比较操作,无论数据规模n多大,操作次数恒为1,因此时间复杂度为O(1)。平均情况和最坏情况下,每次排除一半数据,需要比较log₂n次,时间复杂度为O(logn)。O(n)是线性查找的最坏情况,O(nlogn)通常是高效排序算法(如归并排序、快速排序平均)的复杂度。本题考察对“最好情况”这一特定条件的理解,切勿混淆为平均复杂度。20.【参考答案】C【解析】饿汉式(B)在类加载时即初始化,线程安全但可能造成资源浪费。懒汉式双重检查锁(A)线程安全但代码复杂。枚举方式(D)也是线程安全且防反射破解的最佳实践之一,但题目强调“利用类加载机制保证唯一性”且常作为高频考点对比的是静态内部类。静态内部类方式(C)中,外部类加载时内部类不加载,只有首次调用getInstance时才加载内部类并初始化实例,既实现了懒加载,又利用了JVM类加载机制保证线程安全和唯一性,无需同步锁。虽然枚举也符合,但在传统面试题境中,C是针对“类加载机制+懒加载+线程安全”这一组合特征的经典答案。若单选且强调机制,C尤为典型。21.【参考答案】C【解析】ArrayList和LinkedList允许重复且无序;HashSet保证唯一但无序。TreeSet基于红黑树实现,既保证元素唯一性,又支持自然排序或自定义Comparator排序,符合“唯一且有序”的需求。注意TreeSet插入性能略低于HashSet,但在需要排序场景下是标准选择。22.【参考答案】A【解析】200OK表示请求成功;403Forbidden表示服务器拒绝请求(通常因权限不足),404才是未找到;500InternalServerError属于服务器端错误;301是永久重定向,302才是临时重定向。掌握常见状态码分类(2xx成功,3xx重定向,4xx客户端,5xx服务端)是后端开发基础。23.【参考答案】B【解析】对索引列使用函数(如YEAR(create_time))或计算会导致数据库无法直接使用索引结构,从而退化为全表扫描。A、C、D均为正确使用索引的场景。最左前缀原则要求联合索引查询时必须从最左侧列开始匹配,否则后续列索引失效。24.【参考答案】A【解析】@RestController等价于@Controller+@ResponseBody,专门用于构建RESTfulWeb服务,自动将返回对象序列化为JSON。@Service用于业务逻辑层,@Repository用于数据访问层,@Component是通用组件标识。B、C、D均不直接涉及Web接口响应处理。25.【参考答案】C【解析】Redis7.0之前List底层主要是双向链表或压缩列表(ziplist),但在较新版本及特定条件下,底层实现可能优化为quicklist(快速列表,结合链表与压缩列表)。虽然传统说法常称其为链表,但严格来说C选项表述不够严谨,不过相比其他绝对正确的选项,本题考察点在于:String、Hash、Set特性描述均无误。若需更精准考点,通常易错点在于Zset底层是跳表+字典。此处C为相对最佳干扰项,实际生产中需注意版本差异。*注:若按经典面试题逻辑,通常认为List基于双向链表是正确的,但若必须选错,有时考题会设置“List有序且可重复”为正确,而混淆Zset特性。此处假设C因底层实现演变被视为不严谨。更常见的错误选项设计可能是“Zset不支持范围查询”。鉴于题目要求科学性,若C被视为正确,则需调整选项。让我们换一个更明确的错误点:*
*修正题干选项C为:ZSet底层仅使用哈希表实现。*
*重新生成该题:*
【题干】关于Redis数据结构,下列说法错误的是?
A.String支持原子递增B.Hash适合存储用户信息C.ZSet底层仅使用哈希表D.List可用于消息队列
【参考答案】C
【解析】ZSet(有序集合)底层同时使用哈希表(用于O(1)查找成员)和跳表(用于排序和范围查询),并非仅使用哈希表。String确实支持incr原子操作;Hash结构紧凑适合对象存储;List的lpush/rpop组合常用于简单消息队列。26.【参考答案】C【解析】gitpush用于将本地提交上传至远程仓库;gitpull是fetch+merge的组合,用于拉取远程更新;gitfetch仅下载远程元数据而不合并;gitmerge用于合并分支。理解推拉模型是团队协作开发的基础。27.【参考答案】C【解析】ls-l显示详细信息(权限、所有者等);ls-a显示所有文件(包括以.开头的隐藏文件);ls-al结合两者,显示所有文件的详细信息。pwd仅显示当前工作目录路径。熟练掌握ls参数组合是Linux运维必备技能。28.【参考答案】C【解析】第一次握手客户端发SYN;第二次握手服务器回复SYN+ACK,确认收到客户端SYN并同步自身序列号;第三次握手客户端发ACK。FIN用于断开连接。理解握手过程有助于排查网络连接问题。29.【参考答案】C【解析】快速排序最坏情况(已有序)退化为O(n^2);冒泡和插入排序平均及最坏均为O(n^2)。归并排序无论最好、最坏还是平均情况,时间复杂度稳定为O(nlogn),但需要O(n)额外空间。稳定性与复杂度平衡是排序算法选型关键。30.【参考答案】A【解析】开闭原则(OCP)核心是软件实体应对扩展开放,对修改关闭。即在不修改原有代码的前提下,通过扩展(如新增类)来增加新功能。这有助于提高代码的可维护性和复用性,是SOLID原则中的重要一环。31.【参考答案】ABC【解析】HashMap非线程安全,允许null键值;HashTable线程安全,不允许null。HashMap继承AbstractMap,HashTable继承Dictionary。由于HashTable同步机制导致开销大,性能通常低于HashMap。故选ABC。32.【参考答案】ABD【解析】SpringBoot通过@EnableAutoConfiguration开启自动配置,利用@Conditional判断条件,通过spring.factories加载预定义配置类,无需手动注册。故选ABD。33.【参考答案】ABCD【解析】函数运算、否定操作符、左模糊查询及违反最左前缀均会导致优化器放弃使用索引,转为全表扫描。故选ABCD。34.【参考答案】ABC【解析】RDB是快照,文件小恢复快;AOF记录指令,数据更安全但文件大、恢复慢。故D错误,选ABC。35.【参考答案】ABD【解析】三次握手涉及LISTEN、SYN_SENT、SYN_RCVD、ESTABLISHED。TIME_WAIT出现在四次挥手阶段。故选ABD。36.【参考答案】ABC【解析】gitrebase是变基,重写历史,不生成合并节点(merge才生成)。其他选项描述正确。故选ABC。37.【参考答案】AB【解析】ps和top用于查看进程状态;netstat查看网络连接;kill用于终止进程。故选AB。38.【参考答案】ABC【解析】CompositionAPI提升了逻辑复用和TS支持,但并非完全兼容OptionsAPI写法,二者思维模式不同。故选ABC。39.【参考答案】ABC【解析】Eureka重可用性(AP),Zookeeper重一致性(CP),Nacos可切换。客户端负载均衡由客户端发起,非服务端。故选ABC。40.【参考答案】ABD【解析】单例、工厂方法、建造者均为创建型模式;适配器属于结构型模式。故选ABD。41.【参考答案】ABC【解析】HashMap未做同步处理,多线程下易出现数据不一致,故A正确。JDK1.8之前,ConcurrentHashMap使用Segment分段锁机制提高并发度,B正确。JDK1.8重构后,摒弃Segment,直接使用Node数组+链表/红黑树,利用CAS和synchronized保证线程安全,粒度更细,C正确。Hashtable虽线程安全,但采用全表锁,并发性能远低于ConcurrentHashMap,D错误。42.【参考答案】ABC【解析】A项,对索引列使用函数会导致数据库无法直接使用索引值进行匹配,导致全表扫描。B项,like查询若以通配符开头,优化器无法确定范围,通常导致索引失效。C项,联合索引遵循最左前缀法则,跳过左侧列或中间列断裂会导致后续列索引失效。D项,字符串不加引号可能触发隐式类型转换,导致索引失效,但题目问的是“正确的描述”,ABC为典型失效场景,D也是失效场景,但若单选或多选需看语境,此处ABCD均可能导致失效。修正:D项确实会导致索引失效。故全选更准确,但通常考题重点在ABC。若严格依据常见考点,ABCD均为正确描述。此处设答案为ABCD更严谨,但依常规高频考点,ABC为核心。若必须选三项,ABC最为典型。鉴于多选,建议选ABCD。这里调整为ABCD。
*注:为符合300字限制及常见考点侧重,若系统强制限制选项数量逻辑,ABC为最核心机制类错误。但D也是事实。此处给出ABCD。*
【参考答案】ABCD
【解析】A项函数运算破坏索引有序性;B项前置模糊查询无法利用B+树范围查找;C项违背最左前缀,索引列无法被优化器识别;D项隐式类型转换导致索引列值类型不匹配,从而失效。四者均为经典索引失效场景。43.【参考答案】ABCD【解析】SpringBean生命周期顺序为:实例化->属性赋值->初始化->销毁。A正确,先创建对象实例。B正确,populateBean后进行initializeBean。C正确,单例Bean在容器关闭时执行销毁回调。D正确,BeanPostProcessor的postProcessBeforeInitialization和postProcessAfterInitialization分别在初始化前后执行,是AOP实现的基础。44.【参考答案】ABCD【解析】TCP建立连接需三次握手。A:客户端发送SYN=1,seq=x。B:服务端收到后回复SYN=1,ACK=1,seq=y,ack=x+1。C:客户端再回复ACK=1,seq=x+1,ack=y+1。D:握手目的不仅是连接建立,更是为了双方同步初始序列号(ISN),并确认双方的发送和接收能力正常,防止已失效的连接请求报文段突然又传送到了服务端,因而产生错误。45.【参考答案】ABC【解析】分布式锁核心要求互斥性和防死锁。A项SETNX(SetifNotExists)保证互斥。B项EXPIRE设置过期时间防止死锁,但非原子操作有风险。C项是Redis2.6.12后推荐的原子命令,同时设置值和过期时间,保证原子性,是最佳实践。D项DEL用于释放锁,但不是获取锁的特性。题目问“实现”分布式锁的关键特性,获取锁的原子性与互斥性最关键,故ABC涉及获取锁的核心逻辑。若包含释放,D也可选,但通常考察获取机制。此处侧重获取锁的正确方式,故选ABC。46.【参考答案】B【解析】HashMap是非线程安全的。在多线程环境下,若
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 新形势下船舶用分电器行业顺势崛起战略制定与实施分析报告
- 专用工程机械行业市场营销创新战略制定与实施分析报告
- 2025-2030年太阳能设备维修企业数字化转型与智慧升级战略分析研究报告
- 护士3基试题及答案
- GEO优化系统深度测评报告2026:三大主流系统横向对比与企业选型指南
- 护士资格考试试题及答案
- 2026年计算机二级C语言考试大纲
- 2026年职业心理测评报告
- 2026年钢铁厂安全生产防范知识
- 初中生2025年责任感培养说课稿
- 离婚协议书 2026年民政局标准版
- 2026年及未来5年市场数据中国固态硬盘(SSD)行业市场全景分析及投资规划建议报告
- 灌溉工程巡查培训课件
- 建筑工程标准化培训课件
- 数据讲故事与可视化【演示文档】
- 装配式活动板房安装安全技术交底
- (正式版)DB23∕T 3337-2022 《黑龙江省超低能耗居住建筑节能设计标准》
- 2025年贵州省辅警人员招聘考试题库及答案
- 2025年口腔医学专业考研试题及答案
- 【中考真题】2025年上海英语试卷(含听力mp3)
- 主播签约法律合同标准模板
评论
0/150
提交评论