admin 管理员组

文章数量: 1087139


2024年4月18日发(作者:伦勃朗耶稣指着)

研发工程师面试笔试题目

(经典版)

编制人:__________________

审核人:__________________

审批人:__________________

编制单位:__________________

编制时间:____年____月____日

序言

下载提示:该文档是本店铺精心编制而成的,希望大家下载后,能够帮助大家

解决实际问题。文档下载后可定制修改,请根据实际需要进行调整和使用,谢谢!

并且,本店铺为大家提供各种类型的经典范文,如工作计划、工作总结、演讲

致辞、合同协议、管理制度、心得体会、法律文书、教学资料、作文大全、其他范

文等等,想了解不同范文格式和写法,敬请关注!

Download tips: This document is carefully compiled by this editor. I

hope that after you download it, it can help you solve practical problems.

The document can be customized and modified after downloading, please adjust

and use it according to actual needs, thank you!

Moreover, our store provides various types of classic sample essays for

everyone, such as work plans, work summaries, speeches, contract agreements,

management systems, insights, legal documents, teaching materials, complete

essays, and other sample essays. If you want to learn about different sample

formats and writing methods, please pay attention!

第 1 页

共 8 页

研发工程师面试笔试题目

研发工程师面试难吗?求职面试时,面试官一般都会问你一些问

题,也可能是通过问卷的形式提问,怎么回答才是最好的呢?这里给

大家分享一些研发工程师面试笔试题目,希望对大家有所帮助。

研发工程师招聘面试题

一、String,StringBuffer, StringBuilder 的区别是什

么?String为什么是不可变的?

是字符串常量,StringBuffer和StringBuilder是字

符串变量。StringBuffer是线程安全的,StringBuilder是非线程安

全的。具体来说String是一个不可变的对象,每次修改String对象

实际上是创新新对象,并将引用指向新对象。效率很低。StringBuffer

是可变的,即每次修改只是针对其本身,大部分情况下比String

效率高,StringBuffer保证同步(synchronized),所以线程安全。

StringBuilder没有实现同步,所以非线程安全。但效率应该比

StringBuffer高。StringBuffer使用时最好指定容量,这样会比不

指定容量快30%-40%,甚至比不指定容量的StringBuilder还快。

二、VECTOR,ARRAYLIST, LINKEDLIST的区别是什么?

vector是同步的,arraylist和linkedlist不是同步的。底层

方面,vector与arraylist都是基于object[]array实现的,但考

虑vector线程安全,所以arraylist效率上回比vector较快。元素

随机访问上,vector与arraylist是基本相同的,时间复杂度是O

第 2 页

共 8 页

(1),linkedlist的随机访问元素的复杂度为O(n)。但在插入删除

数据上,linkedlist则比arraylist要快很多。linkedlist比

arraylist更占内存,因为linkedlist每个节点上还要存储对前后

两个节点的引用。

三、HASHTABLE, HASHMAP,TreeMap区别

Hashmap和HashTable都实现了Map接口,但HashTable是线程

安全的,HashMap是非线程安全的。HashMap中允许key-value值均

为null,但HashTable则不允许。HashMap适合单线程,HashTable

适合多线程。HashTAble中的hash数字默认大小是11.增加方式为

old_2+1,HashMap中的hash默认大小为16,且均为2的指数。TreeMap

则可以将保持的数据根据key值进行排列,可以按照指定的排序方式。

默认为升序。

四、ConcurrentHashMap和HashTable的区别

两者均应用于多线程中,但当HashTable增大到一定程度时,其

性能会急剧下降。因为迭代时会被锁很长时间。但ConcurrentHashMap

则通过引入分割来保证锁的个数不会很大。简而言之就是HashTable

会锁住真个map,而ConcurrentHashMap则只需要锁住map的一个部

分。

五、Tomcat,apache,jboss的区别

Tomcat是servlet容器,用于解析jsp,servlet。是一个轻量

级的高效的容器;缺点是不支持EJB,只能用于Java应用。Apache是

http服务器(web服务器),类似于IIS可以用来建立虚拟站点,编译

第 3 页

共 8 页

处理静态页面。支持SSL技术,支持多个虚拟主机等功能。Jboss是

应用服务器,运行EJB的javaee应用服务器,遵循javaee规范,能

够提供更多平台的支持和更多集成功能,如数据库连接,JCA等。其

对servlet的支持是通过集成其他servlet容器来实现的。如tomcat。

六、GET POST区别

get是从服务器上获取数据,post是向服务器发送数据。get是

把参数数据队列加到提交表单的action属性所指的URL中,值和表

单内各个字段一一对应,在url中可以看到。post是通过HTTPpost

机制,将表单内各个字段与其内容放置在html header内一起传送到

action属性所指的url住址。对于get方式,服务区端用

tring获取变量值,对于post方式,服务器端用

获取提交的数据。get传送的数据量较小,post较大,

一般不受限制。get安全性比post要低,但执行效率较高。

七、SESSION, COOKIE区别

session数据放在服务器上,cookie则放在客户浏览器上。

cookie不太安全,因为可以分析出本地cookie,并进行cookie欺骗,

考虑安全应使用session。session会在一定时间内保存在服务器上,

当访问增多时,会比较占用服务器的性能,考虑减轻服务器压力则应

该使用cookie。单个cookie保持的数据不超过4k,很多浏览器都限

制要给站点最多保存20个cookie。

八、Servlet的生命周期

主要分三个阶段:初始化——调用init()方法,响应客户请

第 4 页

共 8 页


本文标签: 支持 服务器 数据 对象 大家