IT公司笔试面试真题及详细答案(零基础-初级开发)_第1页
IT公司笔试面试真题及详细答案(零基础-初级开发)_第2页
IT公司笔试面试真题及详细答案(零基础-初级开发)_第3页
IT公司笔试面试真题及详细答案(零基础-初级开发)_第4页
IT公司笔试面试真题及详细答案(零基础-初级开发)_第5页
已阅读5页,还剩3页未读, 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

IT公司笔试面试真题及详细答案(零基础/初级开发通用)本套试题适配初级Java、前端、运维、测试等全岗位IT入门招聘,分为笔试客观题、笔试编程实操题、面试主观问答题三部分,题目均为企业高频考点,答案贴合职场实际工作场景,简洁实用、无书面模板化内容。第一部分笔试客观题(单选+多选+判断,附详细答案)一、单选题(15题)1、以下不属于常用后端开发语言的是()A、JavaB、PythonC、HTMLD、Go答案:C解析:HTML是前端标记语言,仅用于搭建网页结构,无法独立完成后端逻辑开发、数据处理、接口开发等后端工作,其余三项均为主流后端开发语言。2、HTTP协议中,用于提交表单数据、新增资源的请求方法是()A、GETB、POSTC、DELETED、PUT答案:B解析:GET用于查询获取数据,参数公开且有长度限制;POST主要用于提交数据、新增内容,参数私密无固定长度限制;PUT用于修改更新资源,DELETE用于删除资源。3、MySQL中,用来查询数据表中所有数据的关键字是()A、FINDB、SELECTC、SEARCHD、QUERY答案:B解析:MySQL标准查询语句为SELECT*FROM表名,其余均非数据库标准查询关键字。4、在Java中,以下关于private修饰符的说法正确的是()A、全局所有类可访问B、仅本类内部可访问C、同包内可访问D、子类可继承访问答案:B解析:private是私有修饰符,权限最小,仅当前类内部可以调用、访问,外部类、子类、同包类均无法直接访问。5、前端CSS中,设置元素水平居中的属性值是()A、text-align:centerB、float:centerC、position:centerD、display:center答案:A解析:text-align:center用于文本、行内元素水平居中;float仅支持左右浮动,position、display无center属性值。6、TCP和UDP协议的核心区别,以下说法错误的是()A、TCP面向连接,UDP无连接B、TCP可靠传输,UDP不可靠C、TCP传输速度更快D、UDP开销更小答案:C解析:TCP需要三次握手、四次挥手建立和断开连接,校验数据完整性,传输速度较慢;UDP无需连接、无校验机制,传输速度更快、开销更低。7、Git中,用于将本地代码提交到本地仓库的命令是()A、gitpushB、gitcommitC、gitpullD、gitclone答案:B解析:gitcommit提交代码到本地仓库;gitpush推送本地代码到远程仓库;gitpull拉取远程最新代码;gitclone克隆远程仓库到本地。8、MySQL中主键(PRIMARYKEY)的特性是()A、允许为空、允许重复B、不允许为空、不允许重复C、允许为空、不允许重复D、不允许为空、允许重复答案:B解析:主键是数据表唯一标识,必须非空、唯一,一张数据表只能有一个主键。9、JavaScript中,以下哪个是正确的变量命名()A、123nameB、name_1C、name@1D、var答案:B解析:变量名不能以数字开头、不能包含特殊符号、不能使用系统关键字,name_1符合命名规范。10、以下哪种数据结构是先进先出(FIFO)()A、栈B、队列C、哈希表D、树答案:B解析:队列遵循先进先出,栈遵循先进后出。11、HTTP状态码404的含义是()A、服务器错误B、请求成功C、资源不存在D、权限不足答案:C解析:404=请求的页面/资源不存在;500=服务器内部错误;200=请求成功;403=权限不足。12、Java中,String和StringBuilder的区别,说法正确的是()A、String可变,StringBuilder不可变B、String不可变,StringBuilder可变C、两者均可变D、两者均不可变答案:B解析:String是不可变字符串,每次修改都会生成新对象;StringBuilder是可变字符串,修改内容不会创建新对象,适合频繁拼接字符串。13、Linux中查看当前目录下所有文件的命令是()A、cdB、lsC、pwdD、mkdir答案:B解析:ls查看目录文件;cd切换目录;pwd查看当前路径;mkdir创建文件夹。14、接口和抽象类的核心区别,正确的是()A、抽象类可以有构造方法,接口没有B、抽象类可以多继承,接口只能单继承C、两者完全无区别D、接口能包含普通变量,抽象类不能答案:A解析:抽象类有构造方法、支持单继承、可定义普通变量;接口无构造方法、支持多实现、只能定义常量。15、以下不属于前端三大核心技术的是()A、HTMLB、CSSC、JavaScriptD、Java答案:D解析:前端三大基石为HTML、CSS、JavaScript,Java是后端开发语言。二、多选题(5题)1、以下属于关系型数据库的有()A、MySQLB、OracleC、RedisD、SQLServer答案:ABD解析:Redis是非关系型缓存数据库,其余三项均为主流关系型数据库。2、HTTP请求中,常见的请求头参数有()A、User-AgentB、Content-TypeC、CookieD、Status答案:ABC解析:User-Agent标识客户端设备,Content-Type标识请求数据格式,Cookie存储用户会话信息;Status是响应状态码,不属于请求头。3、Java中基本数据类型包含()A、intB、StringC、booleanD、double答案:ACD解析:Java8大基本数据类型包含int、double、boolean、byte、short、long、float、char,String是引用类型。4、常见的前端页面布局方式有()A、浮动布局B、弹性布局flexC、网格布局gridD、流式布局答案:ABCD解析:以上四项均为日常开发中常用的前端页面布局方式。5、Linux中常用的文件操作命令有()A、cpB、mvC、rmD、cat答案:ABCD解析:cp复制文件、mv移动/重命名文件、rm删除文件、cat查看文件内容。三、判断题(5题)1、GET请求可以携带请求体传递参数。()答案:错误解析:GET请求参数拼接在URL后,无请求体;只有POST、PUT等请求支持请求体传参。2、数据库索引可以提升查询效率,也可以无限创建索引。()答案:错误解析:索引能加快查询,但会降低新增、修改、删除数据的效率,且占用存储空间,不能无限制创建。3、Java中null可以调用对象方法。()答案:错误解析:null代表空对象,调用方法会直接抛出空指针异常。4、Git中gitreset命令可以回退版本。()答案:正确解析:gitreset是常用的版本回退命令,可回退本地代码至指定版本。5、UDP协议适用于直播、游戏等对速度要求高、允许少量数据丢失的场景。()答案:正确解析:UDP传输速度快、无重传机制,适合实时性要求高、无需100%数据可靠的场景。第二部分笔试编程实操题(通用基础+答案解析)实操题1:字符串反转(Java/Python通用)题目:输入任意字符串,实现字符串反转输出,例如输入“abc123”,输出“321cba”。Python参考答案:PlainText

#字符串反转实现

str1=input("请输入字符串:")

new_str=str1[::-1]

print("反转结果:",new_str)Java参考答案:PlainText

publicclassReverseStr{

publicstaticvoidmain(String[]args){

Stringstr="abc123";

//利用StringBuilder反转

StringBuildersb=newStringBuilder(str);

Stringreverse=sb.reverse().toString();

System.out.println("反转结果:"+reverse);

}

}解析:核心思路为借助语言自带的字符串反转方法,简洁高效,适合业务基础场景,避免手写复杂循环,符合企业开发规范。实操题2:MySQL查询实操题目:现有用户表user(id、username、age、gender、create_time),查询所有年龄大于20岁的男性用户,按创建时间倒序排列,只展示前10条数据。参考答案:PlainText

SELECTid,username,age,gender,create_time

FROMuser

WHEREage>20ANDgender='男'

ORDERBYcreate_timeDESC

LIMIT10;解析:WHERE筛选条件,ORDERBYDESC实现倒序,LIMIT限制查询条数,是项目中最常用的分页条件查询语句。实操题3:数组去重题目:对数组[1,2,2,3,3,3,4,5,5]进行去重,输出不重复的数组元素。Python参考答案:PlainText

arr=[1,2,2,3,3,3,4,5,5]

new_arr=list(set(arr))

print(new_arr)Java参考答案:PlainText

importjava.util.HashSet;

importjava.util.Arrays;

publicclassDistinctArr{

publicstaticvoidmain(String[]args){

Integer[]arr={1,2,2,3,3,3,4,5,5};

HashSet<Integer>set=newHashSet<>(Arrays.asList(arr));

System.out.println(set);

}

}解析:利用集合元素唯一的特性快速去重,开发中高频使用,效率高于循环判断去重。第三部分面试主观问答真题(HR+技术面,接地气标准答案)一、基础技术问答1、说说你对HTTP和HTTPS的理解?参考答案:HTTP是超文本传输协议,明文传输数据,端口80,传输速度快,但安全性低,数据容易被窃取、篡改。HTTPS是HTTP的加密版本,基于SSL/TLS加密,端口443,传输的数据是加密状态,安全性高,能防止数据泄露和劫持,唯一缺点是需要握手加密,传输速度比HTTP稍慢,现在绝大多数网站和项目都使用HTTPS。2、数据库为什么要加索引?索引是不是越多越好?参考答案:加索引的核心目的是提升数据查询效率,尤其是数据量大的表,索引能避免全表扫描,大幅缩短查询时间。但索引绝对不是越多越好,索引会单独占用磁盘空间,并且数据表新增、修改、删除数据时,需要同步更新索引,索引过多会降低增删改的效率。一般只给高频查询、筛选、排序的字段建立索引。3、TCP三次握手的过程是什么?为什么需要三次握手?参考答案:三次握手核心是建立可靠的连接:第一次客户端向服务器发送连接请求;第二次服务器收到请求后,回复确认并向客户端发送连接请求;第三次客户端收到服务器确认后,再次回复确认,连接正式建立。之所以需要三次握手,是为了验证客户端和服务器的发送、接收能力都正常,避免无效连接,保证后续数据传输的可靠性。4、说说Git工作的基本流程?日常开发怎么使用Git?参考答案:日常开发标准流程:首先从远程仓库拉取最新代码到本地,保证本地代码和线上同步;然后新建分支开发新功能,避免修改主分支代码;开发完成后,本地提交代码;推送本地分支到远程;最后提交合并请求,审核通过后合并到主分支。整个过程可以有效避免代码冲突,保证主分支代码稳定。5、什么是SQL注入?怎么防止SQL注入?参考答案:SQL注入是攻击者通过在输入框输入恶意SQL语句,绕过系统校验,非法查询、修改甚至删除数据库数据的攻击方式。日常开发中主要通过预编译语句、参数化查询、过滤特殊字符、关闭数据库多余权限等方式防范,最核心、最常用的是参数化查询。二、职场综合面试问答1、你为什么选择做IT技术岗位?参考答案:我本身对代码开发、系统搭建、问题排查比较感兴趣,喜欢通过技术解决实际问题的过程。IT技术岗位逻辑清晰、成长路径明确,需要持续学习,很适合我踏实钻研的性格。同时岗位实用性强,能够不断积累项目经验,长期发展空间比较大。2、开发中遇到不会的问题,你是怎么解决的?参考答案:首先我会先自己梳理问题、查看报错日志,定位问题根源;然后查阅官方文档、技术博客、开源社区的解决方案,自行尝试调试修复;如果多次尝试仍无法解决,会整理好问题和自己的排查过程,请教同事和前辈,解决问题后会记录下来,总结经验,避免后续重复踩坑。3、如何看待加班?能不能接受阶段性加班?参考答案:我不排斥合理的阶段性加班。项目迭代、上线前夕、紧急bug修复都是技术岗位常见的情况,为了保证项目进度和质量,我可以主动配合加班完成工作。同时我也会在日常工作中提升效率,

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论