这部分内容,参考了《面试官的七种武器》一文。 电面与face2face的面试还是有区别的,很多考察方式无法使用。

从简历聊起,逐渐进入正题。

Java语法

重载与重写的区别?

java如何实现多态?

StringBuilder StringBuffer区别?

Nested Class相关概念?

Inner Class, Static Nested Class的使用?

如何在outer world中new一个nested class?

 public class Outer {

     public class Inner {

     }
} public class Tester {
public static void main() {
Outer outer = new Outer();
Inner inner = outer.new Inner();
}
}

final finally finalized关键字的区别?

static关键字都有哪些使用场景(static方法必须,说出static block及格,说出import static会加分)。

初始化块?

lib

jdk中常见的framework,比如IO

Collection:

HashMap

juc并发框架:

ConcurrentHashMap的实现原理

volatile\sychronized关键字的使用

你常用的并发容器? BlockingQueue的实现ABQ和LBQ的区别?

显式锁与内置锁的区别?

AQS?

原子操作?

对于Spring来说,要重点掌握IOC和AOP的实现原理,其中AOP要知道动态Proxy和CGLIB两种实现方式。

对于ORM框架,要重点掌握MyBatis和Hibernate的实现原理和不同点。

JVM

JVM的运行时内存区域如何划分?

JVM内存模型

GC机制: GC: hotspot系列虚拟机有哪些常用的GC算法?

JVM的性能调优

类加载机制 双亲委派机制

JIT技术,为什么Oracle的Java虚拟机叫做HotSpot?

手写代码

二分查找,快排的思想、时间复杂度分析等等

单链表的反转、判断单链表是否相交

反转二叉树、二叉树的层级遍历 如何使用队列来模拟栈的操作?

手写生产者消费者原型,手写单例模式

设计模式

单例(线程安全的单例?在Java中双重检查加锁为什么会失效?)

你使用过的设计模式有哪些? 什么是策略模式?

Java开发中的其他环节

常见的Web服务器有哪些?

Nignx与Apache的原理及不同

了解过哪些开源框架?

myBatis 与Hibernate相比,主要优势是?

Spring框架的主要特性是?(AOP和IOC)。

Redis持久化有哪些方式?

什么是一致性Hash?

什么是数据库事务,如何实现数据库事务? 如何实现分布式事务?

SQL性能优化方法:select * from table1; 如果有上百万条记录,如何优化? 覆盖索引。

做没做过运维? ps iostat netstat vmstat之类的命令如何使用,等。JVM监控主要是如何获得java core和heap dump,以及如何分析他们,另外一些简单监控命令如jstack和jmap jhat等也要了解。

系统架构设计

如何设计电商秒杀系统?描述如何从各个环节,减少服务器的压力?

其他

项目中最大的挑战? 如何解决的?

非技术

薪资?加班? 职业规划?

参考文献:

http://www.cnblogs.com/lanxuezaipiao/p/3371224.html

我给出的一份Java服务器端面试题-适合电话面试的更多相关文章

  1. Java前端面试题总结

    Java前端面试题总结 简单说一下HTML,CSS,javaScript在网页开发中的定位? HTML:超文本标记语言,定义网页的结构 CSS:层叠样式表,用来美化页面 JavaScript:主要用来 ...

  2. JAVA工程师-蚂蚁金服电话面试

    今天5点半接到一个杭州的电话,是蚂蚁金服打来的,当时心里一阵发慌,由于还在上班,就和面试官约定6点下班之后再来.挂完电话,心里忐忑的不行,感觉自己这也没准备好,那也没准备好.剩下半个小时完全没有心思再 ...

  3. 新鲜出炉一份Java面试清单,共200+道题

    一.Java 基础 1.JDK 和 JRE 有什么区别? 答:JRE是java运行时环境,包含了java虚拟机,java基础类库.是使用java语言编写的程序运行所需要的软件环境,是提供给想运行jav ...

  4. 新鲜出炉!阿里Java后端面经,已拿offer!

    前面给大家分享了一篇字节跳动拿下offer的面经,很多小伙伴都私信我说收获很大,感兴趣的朋友可以回头去看看.很多小伙伴还问我有没有其他大厂的面试题分享,这不他来啦,阿里2020春招面试题给大家整理在下 ...

  5. 金九银十,收下这份 Java String 面试题

    请点赞关注,你的支持对我意义重大. Hi,我是小彭.本文已收录到 GitHub · Android-NoteBook 中.这里有 Android 进阶成长知识体系,有志同道合的朋友,关注公众号 [彭旭 ...

  6. JAVA必背面试题和项目面试通关要点

    一 数据库 1.常问数据库查询.修改(SQL查询包含筛选查询.聚合查询和链接查询和优化问题,手写SQL语句,例如四个球队比赛,用SQL显示所有比赛组合:举例2:选择重复项,然后去掉重复项:) 数据库里 ...

  7. 2015年阿里巴巴蚂蚁金服校招JAVA研发工程师内推电话面试

    没想到阿里校招如此之早,虽然早已进入复习备战状态,但还是感觉有些措手不及...找了个在蚂蚁金服做HR的同学帮忙了内推,然后在最近的几天匆匆忙忙地复习JAVA(之前都把精力放在了数据结构.算法等基础上了 ...

  8. JAVA必背面试题和项目面试通关要点(带答案)

    转载:https://blog.csdn.net/qq_36896779/article/details/78247050 一 数据库 1.常问数据库查询.修改(SQL查询包含筛选查询.聚合查询和链接 ...

  9. 大小厂必问Java后端面试题(含答案)

    你好,我是yes. 这个系列的文章不会是背诵版,不是那种贴上标准答案,到时候照着答就行的面试题汇总. 我会用大白话尽量用解释性.理解性的语言来回答,但是肯定没有比平时通过一篇文章来讲解清晰,不过我尽量 ...

随机推荐

  1. MyCat 学习笔记 第九篇.数据分片 之 数值分布

    1 应用场景 Mycat 自带了多套数据分片的机制,其实根据数值分片也是比较简单,其实这个和数据取摸是类似的实现. 优.缺点同上一篇 2 环境说明 参考  <MyCat 学习笔记>第六篇. ...

  2. mac svn 终端操作命令

    svn 删除目录命令 svn 提交命令 svn commit -m zenggui 出来要提交的目录后,按shift + : + q 如遇到不明白的可以输入:svn help 比如想查询删除命令的使用 ...

  3. WinForm窗体间如何传值

    窗体间传递数据,无论是父窗体操作子窗体,还是子窗体操作符窗体,有以下几种方式: 公共静态变量: 使用共有属性: 使用委托与事件: 通过构造函数把主窗体传递到从窗体中: 一.通过静态变量 特点:传值是双 ...

  4. HDU 3667 费用流(拆边)

    题意:有n个城市(1~n),m条有向边:有k件货物要从1运到n,每条边最多能运c件货物,每条边有一个危险系数ai,经过这条路的费用需要ai*x2(x为货物的数量),问所有货物安全到达的费用. 思路:c ...

  5. Adobe Scout 入门

    http://www.adobe.com/cn/devnet/scout/articles/adobe-scout-getting-started.html Adobe Scout 是新一代 Flas ...

  6. Fitnesse初体验

    FitNesse是一套软件开发协作工具 FitNesse是帮助大家加强软件开发过程中的协作的工具.能够让客户.测试人员和开发人员了解软件要做成什么样,帮助建议软件最终是否达到了设计初衷. 什么是Fit ...

  7. js原生捕鱼达人(一)

    捕鱼达人的游戏大家都很熟悉吧,接下来的两三天,我会将整个游戏的原生js写法详细的写出来,整个游戏应用了面向对象的写法:创建构造函数,在构造函数上面添加对象的属性,然后在构造函数的原型上添加方法,当然这 ...

  8. <global-results>

    全局result(global-results)有很多时候一个<result>可供很多<action>使用,这时可以使用<global-results>标签来定义全 ...

  9. POJ 2406 Power Strings

    F - Power Strings Time Limit:3000MS     Memory Limit:65536KB     64bit IO Format:%I64d & %I64u S ...

  10. 19Spring_AOP编程(AspectJ)_使用@Pointcut注解来定义切点

    我们之前的方式是采用 @AfterReturning(value="execution(* com.guigu.shen.anotion.UserDaoImpl.*(..))",r ...