Java开发实习生通常要做些什么?

对于实习生而言,其实很多公司要求都不是很高,毕竟对你的要求要对的起给你的工资水平,很多公司肯定都知道你本身的大体水平,不会期望太高,只是让你边学习边工作,如果你足够聪明伶俐,足够好学,可能就多培养你一些。不过不同水平的公司(BAT>TMD>其他优秀的互联网公司>小型创业公司),肯定是对你的培养程度不同的,相应的对你实习的要求肯定是不同的。不要认为对你要求越高,得到的实习工资就会高,不是的,像腾讯阿里等公司对于实习生技术要求很高,但工资就在两三千左右,但以后的发展却是远远大于这个价值的。

一、BAT企业对实习生的要求(以阿里为代表):

image.png

java基础非常重要,当然也要深入理解原理,什么JVM、JMM、Classloader,还有一些常见类的源码,自己可以试着分析一遍,现在让你说出LinkedList的内部实现你能不能说出来,HashMap不用多说了,80%的面试都会问到。还有重要的,多线程,并发,网络,IO。这些都是要看看的!特别是spring的源码要好好看看,里面的架构设计得非常好!

需要掌握的技术知识具体总结如下:

1、操作系统。尤其是内存/线程/进程方面

2、计算机网络协议,重点关注 TCP/UDP/HTTP。

3、数据结构与算法。

4、数据库,知道mysql存储引擎中索引的实现机制、数据库事务的几种粒度、行锁,表锁;乐观锁,悲观锁等

5、设计模式,熟悉常用的几种设计模式就行。

6、Java语言基础。熟悉java语言基础,了解JVM、内存模型,重点考察 面向对象、集合框架(继承关系,实现原理)、异常体系、IO体系、并发集合、多线程。熟悉多线程编程/并发/线程安全明显可以加分。

7、J2EE,熟悉Spring/Spring MVC , ORM 什么的吧。看过源码,了解原理之类的也明显可以加分。

8、Linux,熟悉基本的linux命令就行吧

9、如果有自己做过的实习项目会加分不少。

二、TMD企业对实习生的要求(以美团为代表):

image.png

1、精通Java/C++/golang程序开发(至少一种)

2、熟悉linux下后台服务开发、网络开发

3、熟悉zookeeper、redis等开源项目优先

4、在分布式、服务一致性领域研发经验优先

5、优秀的沟通协调能力以及项目推进落地能力

三、其他优秀的互联网公司(以 网易为代表)

image.png

1、具备扎实的计算机专业基本功,数据库、网络、操作系统等,深厚的Java的编程基础

2、熟悉常见的设计模式具备扎实的计算机专业基本功,数据库、网络、操作系统等,深厚的Java的编程基础,熟悉常见的设计模式。

3、熟练掌握主流的开源框架设计理念,对Spring、Mybatis等有深入的了解;

4、熟练掌握数据库原理,基于Oracle或者Mysql的设计和开发

5、熟悉Linux操作系统,git,maven等工具

6、有较强的逻辑分析、数据分析、问题排查能力;

其他的一些小型的互联网公司,依据自身的发展方向不同,对实习生的要求也是不同的,需要具体问题具体分析的,当然了不变的一点是:基础知识一定要打好,一些计算机基础什么的该知道的要知道。

其实上面有些技能还是有点超纲的(对于实习生而言),不要有压力,能有六七分的掌握就可以,不要被这些招聘要求吓坏,很多都是要求偏高的,当然了如果你正好知道那也是你的优势不是?

  • 0
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: Java实习生面试的范围通常涵盖以下几个方面: 1. Java基础知识:包括Java语言特性、数据类型、面向对象编程、集合框架、异常处理、多线程等。 2. Web开发技术:如HTML、CSS、JavaScript、jQuery、Ajax、Servlet、JSP等。 3. 数据库技术:如MySQL、Oracle等关系型数据库,以及NoSQL数据库。 4. 框架和工具:如Spring、Hibernate、MyBatis、Maven等。 5. 网络编程:如TCP/IP、HTTP、HTTPS等协议的基本原理和应用。 6. 其他方面:如算法、数据结构、操作系统、设计模式等。 当然,具体的面试范围还要根据招聘公司的实际需求而定。建议在面试前了解公司业务和所用技术,有针对性地准备相关知识。 ### 回答2: java实习生面试的范围通常包括以下几个方面: 1. Java基础知识:面试官会考察实习生Java语言的了解程度,包括Java的核心概念、面向对象编程思想、基本语法、常用类库等。例如,对于实习生,可能会问到字符串操作、数组、集合类、异常处理等基础内容。 2. 数据结构和算法: 实习生需要掌握常用的数据结构如栈、队列、链表、二叉树等,并能够熟练运用常见算法如排序、查找、递归、动态规划等解决问题。 3. 数据库知识:实习生需要了解数据库的基本概念和操作,如SQL语句的编写、数据库事务、索引、关系模型等。 4. Web开发:对于应用开发方向的实习生,需要了解Java Web相关的技术,如Servlet、JSP、Spring、MVC等,以及常见的前端技术如HTML、CSS、JavaScript等。 5. 操作系统和网络:了解操作系统的基本原理和常见的网络通信协议,如TCP/IP协议栈、HTTP、FTP等,对多线程编程和网络编程有一定了解。 6. 编码规范和设计模式:实习生需要了解常见的编码规范,如命名规范、代码风格约定等,并且对于常见的设计模式如单例模式、工厂模式、观察者模式等有一定的理解。 除了以上内容,实习生面试中也可能会问到一些项目经验、沟通能力、团队协作等方面的问题,以全面考察实习生的能力和潜力。此外,每个公司面试的重点可能会有所不同,因此在准备面试时,还需要研究目标公司的业务特点和技术要求,以便更好地针对性准备。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值