Java面试整理(2018.7)

本人毕业两年,前段时间(2018.7月份)的面试题,分享给目前准备跳槽的小伙伴们,愿都找到心仪的工作。

 

下面是面试题整理(均为电话或视频面试)


铜板街:

1. dubbo 怎么进行事务管理,Spring注解在dubbo下有时候不管用怎么办

2. dubbo和webservice  为什么要用dubbo不用webservice

3. dubbo注册中心怎么实现的

4. 有时候用索引会慢,为什么

5. hashmap的底层原理、是否线程安全、怎么变成线程安全的

6. ConcurrentHashMap和hashmap区别,怎么实现的

7. synchronizedMap方法底层如何实现的

8. 了解哪些设计模式

9. 单例模式是线程安全的吗?怎么变成线程安全的  加synchronized关键字  在哪里加

10. 说一下Spring的IOC、AOP

11.AOP的实现方式有哪些

12.angularJS双向绑定是什么意思,怎么实现的

 

佰米:

1. Mybatis里#和$的区别

2. 解释SQL注入

3. Mybatis里id是自增的,如何获得这个自增的值

4. Arraylist和linkedList区别,为什么ArrayList查找快

5. Spring  AOP的实现原理

6. Jdk动态实现和CGLIB类库代理本质上有什么不同

7. Synchronized()放lock和size有什么不同

 

安恒信息:

1. Mybatis中SQL内外连接

2. Linux命令

3. 解释 ps -ef|grep java中的“|”是什么意思

4. 内外网部署用webservice?并发量很大的时候怎么办

5. 查询信息的IO导出功能

6. 什么是死锁

7. 说说Redis,Redis持久化方式,RDB和AOF哪种方式比较好,默认使用哪个

 

阿里(一面):

1. 项目问的很细,包括应用部署等

2. Dubbo流程、主要组件

3. zookeeper的节点

4. 一致性hash算法

5. hashMap底层原理

6. 索引数据结构,介绍B+树

7. 脏读和幻读

8. Mysql怎么实现分页,会有什么问题

9. GC垃圾回收算法

10. CMS收集器

11. 线程生命周期

12. Sleep()和wait()区别

13. Notify()和notifyAll()的不同

14. notify()工作原理

15. 线程池原理

二面在线编程:在读多写少的情况下,写一个有序容器。

编程挂掉。

 

有赞(一面电话):

1. java基础知识和阿里问的查不多,回答也可以

2. 排序算法有哪些

3. 如果让你设计一个秒杀系统,你会如何设计

4. 有多台服务器,如果库存只剩一件,应该怎么处理

5. 如何判断一个链表是环

二面视频:

1. spring自定义注解如何实现

2. spring AOP原理

3. dubbo流程,dubbo中xml如何配置服务的

4. redis数据类型,string类型中的SETNX命令(实际是问分布式锁),持久化方式

5. JVM内存模型,相关调优命令

6. 异常类型有哪些

7. 最近在看哪些书,有什么收获

8. 近期的规划

因为职位满了,又被转给另一个部门:

1.MySQL一张表多少数据时,性能开始出现问题

2.redis分布式锁

3.内存泄露,怎么解决

4.栈溢出的情况有哪些

5.negix如何进行负载均衡

 

恒生电子(视频面试):

打开视频面试官第一句话,怎么是个女的....

我:Emmmmm

之后发现hr把我简历推给了部署运维部,后来又内推给了技术业务部。后来的面试是两个面试官,态度nice,题目和上面差不多,比上面涉及宽度还要大,问的非常细,一面通过后,个人原因没有去复试。

 

其他问题:

1.线程安全的问题,lock和同步机制的区别,CAS乐观锁和悲观锁

2. NIO和IO区别

3.JDK7和JDK8的区别,JDK8新特性有哪些(hashMap进化到数组+链表-->红黑树)

4.数据库事务ACID,分别举例子。其中隔离性的4种属性,涉及幻读和脏读

5.Minor GC和 Full GC

6.数据库索引,索引的数据结构B+树,索引的最左前缀原则

7.垃圾回收算法基本都问了,G1收集器

8.spring是重点

其他暂时想不起来了。。找工作需要先找几家小公司试水,面着面着就知道方向了,但无论面试题会多少,对于大公司来说,你的实力还是很容易暴露的,平时多沉淀才是真正要做的事情。

 

更新20180831

根据面试题整理,这是我在边面试边复习中看到的一些好的博客文章,现在把链接汇总起来,分享给大家。

利用Redis 实现消息队列

使用Redis SETNX 命令实现分布式锁

堆和栈的概念和区别

面试必备:什么是一致性Hash算法

七大常见排序算法总结

详解synchronized与Lock的区别与使用

Java锁--Lock实现原理(底层实现)

Java 网络IO编程总结(BIO、NIO、AIO均含完整实例代码)

ArrayList自动扩容解析

Java ArrayList的自动扩容机制

Java常见面试题—GC垃圾收集器

Spring事务管理(详解+实例)

全面理解Java内存模型

Java基础之—反射(非常重要)

Spring的两种代理方式:JDK动态代理和CGLIB动态代理

java高并发:CAS无锁原理及广泛应用

Java面试准备十五:数据库——索引

HashMap,LinkedHashMap,TreeMap的区别

解决哈希(HASH)冲突的主要方法

volatile关键字及其作用

40个Java多线程问题总结spring和springMVC的面试问题总结

[jvm][面试]JVM 调优总结

Java中的泛型<T>类与方法

  • 7
    点赞
  • 20
    收藏
    觉得还不错? 一键收藏
  • 6
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值