转载 蚂蚁课堂博客-http://www.itmayiedu.com/front/articleinfo/131.html
上海快钱支付Java面试题解析
地点在浦东新区, 没有笔试题 直接问。 主要考察 序列化 事务 分布式、map实现原理 线程安全 并发包 算法 智商题。
①说说序列化?
做数据的持久化操作
答:对象使用IO的方式存放在硬盘上,这叫序列化。简单说就是使用java序列化 转成字节。
②序列化?哪里用到了? 每个类上有个表示ID是?
答:hibernate、持久层框架、网络通讯等。id表示反序列化 不重复。
③序列化有那些协议?
xml json
④说一下死锁 同步中嵌套同步导致无法释放锁。
答:悲观锁和乐观锁区别?
乐观锁比较乐观,每次在拿数据的时候比较乐观,不会上锁。
悲观锁就是比较悲观,每次在拿数据的时候,都会上锁。也行锁、表锁、读写锁等。
⑤类的什么周期 ?
加载 连接 初始化 使用 销毁
⑥数据库SQL优化 (出了索引在说至少5种 )
不要使用*号。需要什么查什么,不要使用大于=,最好使用大于 不要是用in,最好是用 between, 不要使用not is null 大数据查询最好分页等。
⑦ 服务器如何防止重复提交
session token
说一下线程安全问题?
当多个线程共享同一个全局变量时,做写的操作,会出现线程安全?
⑧java内存模型?
jmm 线程与主内存通讯 关系
⑨说一下volatile?
一个共享变量的修改,能够及时的被其他线程知道
⑩threadLoca
本地线程,解决多并发问题
11.java 1.5 并发包?
①Executor线程池 ② Callable ③CountDownLatch ④FutureTask ⑤lock
12.map的底层实现原理?
数组+链表
那么 java中的 equals()与hashCode() 重写后?
怎么保证多系统之间数据一致性?
分布式事务处理解决方案 本地事务 两阶段提交协议 使用消息队列避免事务
12.排序那些算法?
冒泡 快速 选择 折半 等。
13 spring事务传播级别
Propagation.REQUIRED Propagation.REQUIRED_NEW
14 智商题54张扑克牌,甲乙两人轮流拿牌,每人每次能拿1-4张,谁拿到最后一张谁赢,怎样确保获胜
最后保证留下五张就可以了
15 手写一个快速算法。