高级java 面试总结

HashMap 实现原理  ConcurrentHashMap 怎么实现 线程安全的。

使用 一个 Entry 数组保存数据,Entry 对象中有四个属性,分别是 key,value,next[Entry 类型的](保存不同对象拥有相同hash值的value对象,也就是 hash冲突的解决方式(链表存储))
HashMap 的扩容标准是,达到了设置的哈希因子的临界值,2备扩充,扩充方式为新建一个 Entry 数组,然后重新计算key的hash值进行拷贝存储。

ConcurrentHashMap 是一个线程安全的 hashMap  线程安全是使用  Segment 实现的,并非 直接增加  synchronized关键字

Collections.synchronizedMap(Map)  创建的 线程安全的hashmap是通过 增加 synchronized 关键字 实现的线程安全。

hashMap 中解决 哈希冲突的方法为:重写equals 和 hashCode 函数(还有其他方法,我不会。)

为什么要重写 hashCode 函数减另一篇文章 http://www.jianshu.com/p/d8069b28bb40


volatile  关键字的作用。

volatitle  只能用来修饰 属性,被修饰的属性,在多线程环境中,总能保持最新的数据(不会出现脏数据)也就是实现了线程安全:原理是 被volatile修饰的属性,不允许线程保存私有拷贝。static 修饰的变量无需增加该关键字。volatile变量可以保证下一个读取操作会在前一个写操作之后发生


Integer  考题

Integer a=999;   Integer b=999;  System.out.print(a==b);  输出结果是

输出false  因为 Integer 是对象类型,对象类型得通过 equals 进行比较

如果换成 

Integer a = 999;  System.out.print(a == 999 ); 则输出结果是  true,因为 jdk 会自动进行拆箱操作,就相当于 二个基本数据类型 int  在比较,当然是 true。

如果换成

Integer a=9; Integer b=9; System.out.print(a==b);  输出结果是  true 因为 IntegerCache 会缓存 -128 到 127 之间的数据,所以 返回 true

线程池的实现原理   (我不会)

jvm 相关内容(我不会)

二个排序好的int 数组获取交集

点击查看

Java中CyclicBarrier 和 CountDownLatch有什么不同?

CyclicBarrier 和 CountDownLatch 都可以用来让一组线程等待其它线程。与 CyclicBarrier 不同的是,CountdownLatch 不能重新使用

分布式 ID 生成策略

1、利用 mysql 自增长特效,设置不同的步长 (扩展数据库数量难度大)

2、使用 uuid  (字符串类型,不利于存储和增加索引,无序)

3、使用 uuid 的变种 转换为 10进制的 数字。

4、使用像 Twitter的snowflake算法 

5、使用 redis 或 MongoDB的ObjectId  或 zookeeper 等第三方中间件来做



Spring  注入的方式由几种?

三种、接口类型注入、construct 注入(构造器注入)、set 注入(通过调用属性的set 方法注入)

Spring 的 bean 生命周期?

创建 - 属性注入 - init-method  -  销毁  - destroy-method   超详细讲解

Spring 事务的传播性

PROPAGATION_REQUIRED    如果当前没有事务,就新建一个事务,如果已经存在一个事务中,加入到这个事务中。这是最常见的选择。

PROPAGATION_SUPPORTS   支持当前事务,如果当前没有事务,就以非事务方式执行。

PROPAGATION_MANDATORY   使用当前的事务,如果当前没有事务,就抛出异常。

PROPAGATION_REQUIRES_NEW   新建事务,如果当前存在事务,把当前事务挂起。

PROPAGATION_NOT_SUPPORTED   以非事务方式执行操作,如果当前存在事务,就把当前事务挂起。

PROPAGATION_NEVER   以非事务方式执行,如果当前存在事务,则抛出异常。

PROPAGATION_NESTED     如果当前存在事务,则在嵌套事务内执行。如果当前没有事务,则执行与PROPAGATION_REQUIRED   类似的操作。


mysql 的事务隔离级别有几种?(四种)

1、读取未提交行 - 会有脏读、重复读、幻读

2、读取提交行   - 会 重复读、幻读 (mysql 的默认事务级别)

3、不可重复读  - 会幻读

4、串行化    --( 一个事务部结束,其他事务只能等待,不可同时执行,所以没有 脏读,重复读,幻读风险)

脏读(Drity Read):某个事务已更新一份数据,另一个事务在此时读取了同一份数据,由于某些原因,前一个RollBack了操作,则后一个事务所读取的数据就会是不正确的。

不可重复读(Non-repeatable read):在一个事务的两次查询之中数据不一致,这可能是两次查询过程中间插入了一个事务更新的原有的数据。

幻读(Phantom Read):在一个事务的两次查询中数据笔数不一致,例如有一个事务查询了几列(Row)数据,而另一个事务却在此时插入了新的几列数据,先前的事务在接下来的查询中,就会发现有几列数据是它先前所没有的。

mysql 增加索引原则

点击查看

简单说说 http 协议

点击查看

更多 JAVA 面试题及答案,查看小程序



暂时就记得这么多,如果有错误,欢迎指正、补充。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 213,864评论 6 494
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 91,175评论 3 387
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 159,401评论 0 349
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 57,170评论 1 286
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 66,276评论 6 385
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 50,364评论 1 292
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 39,401评论 3 412
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 38,179评论 0 269
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 44,604评论 1 306
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 36,902评论 2 328
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 39,070评论 1 341
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 34,751评论 4 337
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 40,380评论 3 319
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 31,077评论 0 21
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 32,312评论 1 267
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 46,924评论 2 365
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 43,957评论 2 351

推荐阅读更多精彩内容

  • Java面试 2016年9月11日 1 Java基础特性 Java基础 面试题目总结 首先参考 骆昊的 上中下三篇...
    小斌斌阅读 4,941评论 3 110
  • 从三月份找实习到现在,面了一些公司,挂了不少,但最终还是拿到小米、百度、阿里、京东、新浪、CVTE、乐视家的研发岗...
    时芥蓝阅读 42,221评论 11 349
  • 1. Java基础部分 基础部分的顺序:基本语法,类相关的语法,内部类的语法,继承相关的语法,异常的语法,线程的语...
    子非鱼_t_阅读 31,605评论 18 399
  • 一天我的小妹妹去了一个地方。她在那里看见了一个软软的东西,小妹妹不知道这是什么?于是她就和这个东西玩了起来。不...
    观潮鱼阅读 239评论 0 0
  • 这天早晨,姚雪依旧起床,梳洗,做早点,吃早点,然后坐公交车去上班。 刚下公交,就见一辆自行车飞扑而 来,姚雪来...
    画宫女王阅读 423评论 0 1