[关闭]
@hainingwyx 2017-09-20T19:36:18.000000Z 字数 2419 阅读 1358

Java面试##

Java


阿里

JDK版本,迭代历史中有什么变化
并发编程需要遵守哪几个性质-可见性,原子性,有序性
volatile的原理
synchronize final
synchronize和lock有哪些区别
Object类有哪些方法##
线程的sleep方法和object类的wait方法有什么区别
线程有哪几种状态
解释一下timed_waiting状态
为什么object类需要有equals方法
每个对象的hashcode方法结果都是相同的吗
hash map是不是线程安全
hashmap是如何设计的,get put中key的判断
java的类加载机制
对象什么时候会出现在老年代
java有几种对象引用-强 软 弱 虚
什么是弱引用
什么是软引用
内存不够用时会回收软引用,那什么时候会发生这种事
NIO是什么
NIO除了可以让开发者使用本地内存之外还有什么优势
线程池有哪些类型,singlecached和scheduled的各应用场景
线程池的原理,corepoolsize,maxpoolsize和queue
线程池的核心线程数如何设置,选择标准是什么
为什么要用线程池
http状态码,301和302的区别
为什么需要长连接,怎么实现长连接
Cookie的原理
为什么需要Cookie
如果服务器是分布式的,如何应对Session的一致问题
mysql的引擎
行锁,哪个引擎支持行锁,行锁的优点
mysql的索引是如何实现的,B+树的结构
事务的隔离性
什么是未提交读
spring支持的事务,spring如何管理事务
spring如何实现IOC的
如果配置了两个同类但不同id的bean,IOC容器如何处理
hibernate的get和load有什么区别
hibernate的设计上有什么性能的改进或优化,它是如何实现的

对象锁 和 类锁的区别
servlet是不是线程安全的
文本统计次数,能不能用已有的框架实现
3点15分的分针时针夹角

唯品会

  1. 聊项目, 谈一下 Spring MVC 接受一个请求整体流程
  2. 数据库 char 和 varchar 的区别?读取出来有什么区别?存储进去有什么区别?占用位数?
  3. 数据库引擎,聊一下 Myisam 和 Innodb,你知道哪个支持表级锁,行级锁吗?
  4. ACID,不可重复读,脏读,Spring 怎么实现事务管理?
  5. 对 AOP 的理解。
  6. 你的项目有登录流程,如果判断是否登录?(Cookie 里存 token),拦截器。
  7. java中有什么类可以实现拦截器的作用? 过滤器 和拦截器 和controller的区别?
  8. 如果要 判断登录,记录用户信息,记录日志,你分别用什么组件在按什么顺序实现功能?
  9. 对数据的缓存技术有没有了解?你的项目有用 Redis 吗?
  10. 用了 Redis 什么数据结构,如果你的 Redis 服务器宕了怎么办?
  11. 你的奖学金?学习如何?平时自己玩项目多还是听课做作业多?
  12. 知道哪些设计模式?答单例,装饰者,工厂,动态代理 (以为问动态代理, 就可以回答 Spring, jdk 代理和 cglib 区别 balabla)。
  13. Servlet 是单例的吗?生命周期?
  14. 你的项目中哪里用到了装饰者模式? 他和适配器模式有啥区别?
  15. java 的 I/O 类中有哪些用到了装饰者模式? 尝试回忆一下?
  16. 实习都做了啥? 答修bug, 部署软件, 写接口
  17. 接口用啥写?webService,谈谈 webService? 答跨平台跨防火墙方便,速度慢。
  18. 实习用啥版本控制工具? SVN? 谈谈 SVN 和 gitHub 区别? 卖萌反问好像公司用 SVN 多, 但是现在技术人士都对 gitHub 莫名痴情?
  19. 各组之间如何交流,你有部署一个软件(实习内容不方便透露啦)到公司服务器? 不就是调用接口嘛? 答 JNI 调 DLL,各种测试调参.
  20. 公司服务器是windows吗? 答 linux,先在 windows 上写 demo。
  21. linux 水平? 答 一般, 学校学过, 一边百度一边用还可以, 基本命令会一些。
  22. linux 怎么调 DLL 文件? (想挖坑, linux 是 SO 文件) 。
  23. 会写脚本? ( 百度着简单脚本应该可以写写, 复杂的不会,但是感觉简单的应该不难)
  24. 项目用了异步队列,你自己写了异步框架?? 具体?
  25. 实现多线程的方式? Thread, runnable, 项目用了阻塞队列。
  26. JUC 了解吗?不太了解(正在看, 还在复习)。
  27. Redis 中也能实现异步吧?(有接口方法,jedis 调用)。
  28. wait 和 sleep 方法? 哪个释放对象锁?
  29. 聊聊用过的服务器软件, tomcat? jetty?
  30. 看过啥源码? 没看过 Spring。。 浅笑: 不需要你看Spring。。 看过容器类,因为对数据结构想了解多点,想看看官方实现。
  31. ArrayList 和 LinkedList HashMap 底层结构?
  32. 聊聊垃圾回收算法? 会 JVM 调优吗? (说 之前 Eclipse 太慢调过几个参数,但是不是特别了解)。

此外,还聊了一些 SSM 的配置,一些情景题(忘了。。。)感觉问了好多SSM. 没问啥算法,估计搞 java 的算法比较菜吧哈哈。大概整体答出来70~80%,不会的有些尝试的问他应该怎么办? 有些就直接说不会了。他也说了没关系, 然后又问下一题, 也有说我的思路是对的, 但是具体做法可能欠妥当。。反正聊天比较和谐。

有赞JAVA开发一面面经

1、TCP的三次握手,四次挥手,TIME_WAIT状态说一说
2、Linux中用过的命令,优盘插入Linux操作系统后,是如何处理的?
3、mybatis的缓存,以及设计一个缓存过期后缓存的清理模块。
4、MySQL的索引实现及好处,为什么用自增列作为主键?
5、Spring是如何处理循环依赖的?
6、BIO与NIO的区别,NIO中select的作用?NIO中的Channel的设计模式。。。
7、HashMap的JDK1.7,1.8实现,为什么要用红黑书替换,说一说红黑树。。。。
8、JDBC中PreparedStatement和Statement的区别。
9、JDK的动态代理和静态代理的区别,Spring的动态代理实现。
10、JVM是如何做垃圾回收的,内存溢出的类型,模拟一下场景,以及方法区是否会溢出

添加新批注
在作者公开此批注前,只有你和作者可见。
回复批注