2019年Java初级和高级部分的技术面试

事实上,并不是我故意想成为一个困难的候选人。毕竟,在我加入这份工作后,我是一名同事,但面试官的角色是,如果高级面试官一般都是一样的话。

如果你在这里写,我担心一些想面试的朋友会害怕。如果他们有很强的能力和弱能力,他们会被问到更多。我该怎么办?

这是本文将要讨论的主题:如何准备Java的初学者和高级技术访谈。

I.在同理心下,如果你是面试官,你会做什么?

它只能通过简历和面试来衡量,没有别的办法。如果一头大奶确认了他的能力,但他在面试时无法完全自我认证,那么我很抱歉,我无法通过,现实就是这样。

2.如果面试官由于他的能力而无法大惊小怪,估计他将由领导者领导。并且不再接受采访,对领导的印象并不好。因此,不可能判断主观印象,但会有一些客观标准。具体来说,它是从各个方面提出问题,并在回答问题时回答候选人。

事实上,一些主题是相似的,但具有不同能力的面试官将有不同的入学点和进步学位,经验丰富的面试官将探索候选人的优势,并可以从候选人的修辞中判断候选人。还在闪烁。

2.一般来说,准备面试的几个方面

我记得之前的政治,一个大问题10点,分为5分,每个点的标准答案不多,它是一两句话。诀窍是涵盖所有要点,更不用说每一点,而是谈谈想法。相反,如果你在某个点上做得更多,其他点都没有被覆盖,你只能采取这一点。

同样,在访谈中,您应该全面准备诸如Java Core,数据库,框架和分布式等主题。根据我的采访结果,我发现很多候选人都绕道而行。他们要么没准备好。准备时可能没有它们,他们应该准备一个方面。例如,只准备了算法问题,答案在这方面非常好,但其他方面都是无知的。

因此,没有所谓的成功面试作弊,但有一些准备方法可以帮助提高成功率。

记住,你必须在面试前做好准备,否则成功的可能性非常低。准备好之后,你必须考虑所有方面。至于稍后将讨论每个点的程度。

3.为建筑准备的要点

对于初级开发,面试官需要感受到以下几点。

1.至少在项目中熟悉SSM架构。

对此的论点是如何在引入项目时在业务流程中使用spring mvc。

2.了解Spring MVC的细节,例如@Autowired的用法,如何将url映射到Controller,ModelAndView对象返回的方式等等。

3.最好结合项目的用法,如何使用AOP,拦截器,例如,你可以通过拦截器拦截非法请求,如何使用AOP输出日志等。

4.关于ORM,你不应该使用任何一种,但你需要知道一对一,一对多,多对多的使用,以及级联和反向的使用。

5.最好了解声明性交易的做法。

如果您想申请高级开发,那么在上述基础上,最好了解以下知识点:

Spring Bean循环

最好阅读源代码并讨论IOC,AOP和Spring MVC的工作流程

最好结合反思并说出IOC的实施原理等。

Spring Boot和Spring Cloud的一些知识点

需要为数据库准备的要点

很多考生会阅读很多SQL技巧,比如选择怎么写,插入怎么写,但仅限于此,不再准备其他。

这是非常不利的,因为面试官会认为即使是初级开发,也应该编写SQL语句,因此这篇文章不会提出更多问题,但会提出以下问题。

1.如何构建索引,如何使用它?例如,我构建了一个索引,在where语句中写入名称如'123%'不会占用索引,在什么情况下不应该构建索引,哪些语句不会去索引。

2.除了索引之外,您还具有一些SQL优化经验,例如子数据库子表,或者通过执行计划来查看SQL优化点。最好与您正在处理的项目一起完成。

在这里,我采访过,大约70%的候选人只知道基本的SQL,所以即使你只有理论经验,说一些优化点也会非常有益。

这是对高级开发优化技能的良好理解。

五。需要准备Java Core

这件作品是基础。事实上,提出了许多问题。候选人肯定会在项目中使用它,但他们很少会说出这一切。

本节主要从收集,多线程,异常处理流程和JVM虚拟机等方面提出要求。

收集方面:

1.哈希码是否已被重写?在什么情况下,您需要重写。如果可能,结合哈希表的算法并说出哈希映射的实现原理。

对于高级开发,最好使用ConcurrentHashMap来说明并发的底层实现代码。

2. ArrayList,LinkedList之间的区别,如基于数组,基于列表,它们是线程不安全,ArrayList扩展实践。

对于高级,最好查看底层代码。

3.如何实现反权重,如TreeSet和HashSet。

4.收集方法,比如比较方法,包装成线程安全的方法。

5.一些采访者可能会问如何通过ArrayList实现队列或堆栈,这可以准备。

事实上,多线程并未在项目中使用,但会提出以下问题:

1.同步锁和重入锁之间的区别,然后可能与信号量等反并发机制有关。

2.如何在线程中返回值实际上是可调用的可运行差异。

3.线程的内存模型必须由ThreadLocal或volatile关键字指定。

4.线程池,将使用,了解一些常用参数

在线程方面,可能有更多的并发机制。如果是高级开发,可能会更深入。

虚拟机方面

1.可以粗略地描述结构图和过程。

2.确保了解堆的垃圾收集机制。具体来说,你可以画一幅画,说年轻一代和老一代。

3.说出垃圾收集过程,然后具体说明如何优化代码中的内存性能。

4.最好说是否有OOM异常,如何排除故障?如何查看转储文件。

5.可以准备GC的一些概念,例如强弱软参考,最终确定方法等。在Java技术堆栈中微信公众账号后台回复:Java,可以阅读Java核心技术知识点。

为了让学习变得轻松、高效,今天给大家免费分享一套Java入门教学资源。帮助大家在成为Java架构师的道路上披荆斩棘。需要资料的欢迎加入学习交流群:9285,05736

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/503190.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

2019年Java编程开发值得学习的10大技术

01 Gradle Java世界中主要有三大构建工具:Ant、Maven和Gradle。经过几年的发展,Ant几乎销声匿迹,还剩Maven和Gradle两种,maven是我目前工作中用的版本管理工具。maven现在已经是行业标准,Gradle算是后起之秀&#xff…

Java编程学习中必须掌握的13个核心技术

1. JDBC(Java Database Connectivity): JDBC API为访问不同的数据库提供了一种统一的途径象ODBC一样,JDBC对开发者屏蔽了一些细节问题,另外JDCB对数据库的访问也具有平台无关性。 2. JNDI(Java Name and Directory Interface): …

让你脱胎成技术大神的JAVA开发技巧

开发过程中,那些被称为“666”的大神,领先你的,往往也只有几个快捷键的距离。一些简单的技巧和开发习惯,往往能让你在开发过程中事半功倍。 避免重复创建对象 为什么? 更少的对象会需要更少的垃圾回收 使用的空间越…

Java大牛分享的面试知识点

1.基本部分 无论使用哪种编程语言,基础始终是您不能忽视的部分。以下是经常出现的十点,当然最好熟悉。 使用length属性获取数组的长度,public,private,protected,friendly。 计算2 * 8的最有效方法是等于…

看Java大牛是如何高效学习的?你掌握好这些了吗?

1. 能够认清自己 一个技术专家,年龄不是那么可怕,可怕的是你不符合他们的年龄技术深度。当你把你的工作换成一个刚刚毕业的人,你很快就会被淘汰。所以,你必须选择你感兴趣的方向,因为只有这样,你才有兴趣深…

Java大牛的一些总结,献给对未来还在迷茫中的你!

恍然间,发现自己在这个行业里已经摸爬滚打了五年了,原以为自己就凭已有的项目经验和工作经历怎么着也应该算得上是一个业内比较资历的人士了,但是今年在换工作的过程中却遭到了重大的挫折。详细过程我就不再叙述,在此,…

java初学者只要掌握了以下十大原则,可以让你的技术飙升

1. 将一些需要变动的配置写在属性文件中 比如,没有把一些需要并发执行时使用的线程数设置成可在属性文件中配置。那么你的程序无论在DEV环境中,还是TEST环境中,都可以顺畅无阻地运行,但是一旦部署在PROD上,把它作为多…

一位资深程序员大牛给Java初学者的学习建议

糖糖发现最近很多想要学习Java的小白或者转行到Java这个行业的伙伴们不知道怎样学习才能学得更多专业,今天糖糖给大家整理了一些前辈们的学习方法和技巧,以及常看的一些书籍。这些也非常适合初入Java行业的伙伴们。咱们就来一起看看。 首选对于在校的一…

Java学习的5个阶段,助大家步步攀升

第一阶段:基础阶段(Java基础) 你将要在这个阶段学会的技能: 软件行业信息了解、 java的魅力和安装、 变量、 常量、 算术、 关系、 逻辑、 三目、 if else、 switch、 while、 for、 for高级、 do while、 方法、 方法算法、 封…

java学习明确的路线规划奉上,助大家进阶

1.刚开始需要知道什么 Java SE是我们Java入门的开端,是Java学习的基石,这块内容也就是大家所熟悉的坦克大战、聊天软件、五子棋这些桌面级项目所组成的。学完了Java SE部分,接下来就该选择方向了。 2. Java SE中应该关注的内容 下面我们将…

深入理解Java中的位操作

与、或、非、位移 原码、反码、补码 字节、位、超区间...... 开始本章节之前,我们先思考一个问题: byte a 33; byte b -3;若我们输出a、b的二进制字符串是多少? 答案是这样的么? a->// 00100001 b->// 10100001当然…

同样是Java程序员,如何比别人更优秀?

随着互联网时代的飞速发展,越来越多的人投身于软件开发行业,大家都称他们为程序员,或者码农。 这些程序员的水平也是参差不齐的,有些人从比较好的学校毕业,水平却一般般;也有些人从一般搬的学校毕业&#…

初学Java编程经常遇到的问题,你们遇到过吗?

随着互联网时代的飞速发展,越来越多的人投身于软件开发行业,大家都称他们为程序员,或者码农。 这些程序员的水平也是参差不齐的,有些人从比较好的学校毕业,水平却一般般;也有些人从一般搬的学校毕业&#…

Java技术学习笔记:C/S 与B/S 区别

C/S 是Client/Server 的缩写,是客户机与服务器结构的应用程序,服务器通常采用高性能的PC、工作站或小型机,并采用大型数据库系统,如Oracle、Sybase、Informix 或SQL Server。客户端需要安装专用的客户端软件。 B/S是B…

学习Java编程equals()和hashCode()方法

equals()和hashCode()区别? equals():反映的是对象或变量具体的值,即两个对象里面包含的值--可能是对象的引用,也可能是值类型的值。 hashCode():计算出对象实例的哈希码,并返回哈希码,又称为…

Java技术依然备受追捧,主要学习内容有哪些?

Java技术依然备受追捧,主要学习内容有哪些?Java 语言是一门随时代快速发展的计算机语言程序,其深刻展示了程序编写的精髓,加上其简明严谨的结构及简洁的语法编写为其将来的发展及维护提供了保障。 在众多的主流编程语言中&#x…

六本JAVA架构书,构建科学得架构知识体系

今天把我看过的 6 本架构方面的书都推荐给大家,总有一本满足你的需要。 1. 《大型网站技术架构:核心原理与案例分析》 这是比较早,比较系统介绍大型网站技术架构的书,通俗易懂又充满智慧,即便你之前完全没接触过网站开…

最难学的十大编程语言,Java排第二,它竟是第一名!

开发者经济分析公司 SlashData 曾发布了《 2018 年第 2 季度各国开发者状况》调查报告,共有 167 个国家的 20500 多名开发者参与其中。 报告面向全球所有类型的程序员,对使用每种主要编程语言的活跃开发者数量进行了最新的估计。其中,JavaSc…

java编程中的持有对方引用是什么意思?有什么作用?

持有对方引用比如 A类有: h、j、 k, 3种方法,B类有 h 1种方法,但我B类必须要用到 A 类的 k方法怎么办呢?那么下面就要引入引用了!我在 B 类中创建个A类的引用,例如 如果在同一包下就不用导包了 …

Java学习之数据库中的范式和反范式

范式是关系数据库理论的基础,也是我们在设计数据库结构过程中所要遵循的规则和指导方法。数据库的设计范式是数据库设计所需要满足的规范。只有理解数据库的设计范式,才能设计出高效率、优雅的数据库,否则可能会设计出错误的数据库。 反范式&…