北京天志数融管理咨询有限公司Java开发面试

北京天志数融管理咨询有限公司Java开发面试,面试官压力给的不大,但是主包答的好乱,估计也寄了。

一、Java后端开发岗位面试问题及标准答案

1.C++中`struct`和`class`的区别(基础语法考察)
问题本质:虽为C++知识点,但可反映对编程语言语法细节的掌握,间接体现逻辑严谨性(Java后端开发需理解多语言基础)。
标准答案:
两者核心差异在于默认访问权限和默认继承方式:
`struct`默认成员为`public`(公共),默认继承方式为`public`;
`class`默认成员为`private`(私有),默认继承方式为`private`;
其他功能(如定义方法、继承、多态)完全一致。在实际开发中,`struct`更侧重数据存储,`class`更侧重封装逻辑。

2.动态数组(DynamicArray)与链表(LinkedList)的区别及特点(数据结构考察)
问题本质:Java后端开发中,集合框架(如`ArrayList`基于动态数组,`LinkedList`基于链表)是核心工具,需理解底层数据结构特性。
标准答案:

3.哈希表(HashTable)的基本概念及底层数据结构(数据结构+Java集合关联)
问题本质:Java中的`HashMap`是后端开发高频工具,需理解其底层原理以优化代码性能。
标准答案:
核心功能:通过“键值”映射实现快速查询(平均O(1)),核心是哈希函数将“键”转换为数组索引。
底层结构:由数组(桶)和链表/红黑树组成:
数组是主体,每个索引对应一个“桶”;
哈希冲突(不同键映射到同一索引)时,用“链地址法”存储:JDK8及以上中,当链表长度>8时转为红黑树(提升查询效率至O(logn)),<6时转回链表(节省空间)。

4.数据库索引失效的常见原因(数据库优化考察)
问题本质:Java后端开发需频繁与数据库交互,索引优化是性能调优的核心,直接影响系统稳定性。
标准答案:
索引失效指查询未使用预期索引,导致全表扫描,常见原因:
对索引列使用函数(如`WHERESUBSTR(name,1,1)='A'`);
索引列参与运算(如`WHEREage+1=10`);
使用`NOTIN`、`!=`、`<>`等操作符;
模糊查询以`%`开头(如`WHEREnameLIKE'%张三'`);
联合索引未遵循“最左前缀原则”(如索引`(a,b,c)`,仅用`b`或`c`查询);
索引列存在`NULL`值(数据库对`NULL`处理可能跳过索引)。

5.如何查看SQL语句是否使用索引(数据库工具使用考察)
问题本质:后端开发需具备分析SQL性能的能力,`EXPLAIN`是基础工具。
标准答案:
使用`EXPLAIN`命令(或`EXPLAINANALYZE`)分析执行计划,例如:
```sql
EXPLAINSELECT*FROMuserWHEREid=1;
```
关键看`type`列:
若为`const`(常量)、`eq_ref`(唯一索引匹配)、`ref`(非唯一索引匹配)等,说明使用了索引;
若为`ALL`,则表示全表扫描(未使用索引)。

6.HTTPS的定义及加密流程(网络安全考察)
问题本质:Java后端开发需处理接口通信安全,HTTPS是基础安全协议。
标准答案:
定义:HTTPS是HTTP的安全版本,通过SSL/TLS协议在传输层加密,防止数据被窃听、篡改或伪造。
加密流程(简化):
1.客户端发起请求:发送支持的SSL/TLS版本、加密套件列表;
2.服务器响应:选择加密套件,返回数字证书(含公钥和服务器身份);
3.客户端验证证书:通过CA机构验证证书有效性,生成随机“会话密钥”,用服务器公钥加密后发送;
4.服务器解密:用私钥解密获取会话密钥;
5.对称加密通信:双方用会话密钥进行对称加密传输(后续数据均用此密钥)。

7.项目与实习经历相关问题(匹配度考察)
问题本质:判断候选人实际经验与岗位需求的契合度。
参考答案:
关于实习经历:“实习以软件实施为主,虽代码开发较少,但让我完整参与了企业级项目的需求分析、开发流程及客户对接,积累了对业务场景的理解和跨团队沟通能力,这对后端开发中准确理解需求很有帮助。”
关于二手市场平台项目:“作为后端开发,我负责用户认证、商品发布与查询接口开发,使用Java+SpringBoot框架,数据库用MySQL,通过MyBatis实现CRUD操作,解决了并发查询时的性能问题(如添加索引优化)。”

候选人提问环节(3~5分钟):
候选人可询问公司业务方向(如“后端主要用哪些框架?”)、团队规模、面试结果反馈时间等(体现对岗位的重视)。
面试官告知后续流程(如“1周内通过邮件/电话反馈”),双方礼貌结束对话。

#牛客AI配图神器##秋招笔面试记录##面试##秋招#
全部评论
我这里有最近在做的大厂项目可以包装简历,有需要包装的同学可以去看下我主页简介,那里有项目的线索指引
点赞 回复 分享
发布于 08-20 16:12 江苏

相关推荐

自我介绍&nbsp;挑一个你觉得你成长最多的一个项目说一下项目中用到了哪些技术查重的原理是什么(ES向量库)说一下项目QPS是怎么提升的呢你觉得消息队列能提升吞吐量吗,如果请求过多不是会造成消息积压和异常吗(这里说的多线程加速队列的处理)你用Docker&nbsp;Compose部署容器,用了什么网络模型(没答出来)项目是微服务吗,微服务是怎么拆分的呢,有哪些服务你们团队人数怎么分工的呢,只说研发这边,流程是什么样的呢你第二个项目,我看你做了一些优化,还记得做了哪些优化吗用户图片加载为什么会慢呢,怎么优化的呢远程调用怎么会慢呢,不应该让其他服务优化吗大表查询,你们这个大表数据量是多少你认为这个查询优化具体是分库分表还是索引带来的呢,你认为是什么时候拆表合适呢;如果让你设计一个社交类项目,如微博,你觉得应该涉及哪些服务呢(说了用户和文章,一时半会想不出来多少...)做一道题吧,做完说一下你的思路:两个有序的数组,合并成一个数组后,仍然有序(用了双指针,给了6min时间)说一下AOP底层原理是什么(动态代理。好像就这一个八股文了吧,唉)你平常都是怎么学习的呢无反问,这里问完最后一个问题后,看着面试官很着急,说等后续流程-------------------------------------------------------------------------------------------双非本第一次面试,有好多问题被问懵,大多数是项目和场景估计是挂了。。好好总结,向后接着备战了。
查看18道真题和解析
点赞 评论 收藏
分享
评论
点赞
3
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务